From 801d2608d5e927b9403133ef768c06df80dce52b Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 16 Dec 2013 20:00:39 +0100 Subject: [PATCH] Merging upstream version 6.03~pre1+dfsg. --- bios/com32/elflink/ldlinux/ldlinux.c32 | Bin 122044 -> 122080 bytes bios/com32/elflink/ldlinux/ldlinux.elf | Bin 491615 -> 493103 bytes bios/com32/hdt/hdt.c32 | Bin 173092 -> 173060 bytes bios/com32/lib/libcom32.c32 | Bin 186444 -> 186452 bytes bios/com32/lib/libcom32.elf | Bin 809135 -> 808883 bytes bios/com32/libutil/libutil_lnx.a | Bin 120020 -> 120020 bytes bios/com32/lua/src/liblua.c32 | Bin 112940 -> 112908 bytes bios/com32/mboot/mboot.c32 | Bin 10700 -> 10668 bytes bios/com32/modules/gpxecmd.c32 | Bin 1680 -> 1604 bytes bios/com32/modules/host.c32 | Bin 1908 -> 1832 bytes bios/com32/modules/linux.c32 | Bin 4736 -> 4660 bytes bios/com32/modules/prdhcp.c32 | Bin 3232 -> 3156 bytes bios/com32/modules/pxechn.c32 | Bin 12756 -> 12680 bytes bios/com32/modules/sanboot.c32 | Bin 1712 -> 1636 bytes bios/com32/rosh/rosh.c32 | Bin 13772 -> 13768 bytes bios/com32/samples/resolv.c32 | Bin 1952 -> 1876 bytes bios/com32/sysdump/sysdump.c32 | Bin 15652 -> 15616 bytes bios/com32/sysdump/sysdump.elf | Bin 19212 -> 19148 bytes bios/core/isolinux-debug.bin | Bin 43008 -> 43008 bytes bios/core/isolinux.bin | Bin 43008 -> 43008 bytes bios/core/ldlinux.bin | Bin 66854 -> 66854 bytes bios/core/ldlinux.bss | Bin 512 -> 512 bytes bios/core/ldlinux.sys | Bin 65830 -> 65830 bytes bios/core/lpxelinux.0 | Bin 91249 -> 91536 bytes bios/core/lpxelinux.bin | Bin 91249 -> 91536 bytes bios/core/pxelinux.0 | Bin 46545 -> 46546 bytes bios/core/pxelinux.bin | Bin 46545 -> 46546 bytes bios/dos/syslinux.com | Bin 206448 -> 206448 bytes bios/extlinux/extlinux | Bin 218952 -> 218988 bytes bios/gpxe/gpxelinux.0 | Bin 110744 -> 110736 bytes bios/gpxe/gpxelinuxk.0 | Bin 110656 -> 110652 bytes bios/linux/syslinux | Bin 210776 -> 210812 bytes bios/linux/syslinux-nomtools | Bin 210776 -> 210812 bytes bios/memdisk/memdisk | Bin 26140 -> 26140 bytes bios/mtools/syslinux | Bin 206664 -> 206700 bytes bios/version.gen | 6 +- bios/version.h | 6 +- bios/win32/syslinux.exe | Bin 240640 -> 240640 bytes bios/win64/syslinux64.exe | Bin 246272 -> 246272 bytes com32/include/syslinux/pxe_api.h | 2 +- com32/lib/sys/ansi.h | 3 +- com32/lib/syslinux/disk.c | 22 +- com32/lib/syslinux/load_linux.c | 73 +- core/fs/pxe/http.c | 2 +- core/include/core.h | 6 +- core/include/graphics.h | 2 +- core/isolinux.asm | 2 +- efi/Makefile | 11 + efi/build-gnu-efi.sh | 37 + efi/check-gnu-efi.sh | 39 + efi/find-gnu-efi.sh | 43 - efi/main.c | 5 +- efi32/com32/elflink/ldlinux/ldlinux.e32 | Bin 125116 -> 125136 bytes efi32/com32/elflink/ldlinux/ldlinux.elf | Bin 469151 -> 470743 bytes efi32/com32/hdt/hdt.c32 | Bin 172964 -> 172932 bytes efi32/com32/lib/libcom32.c32 | Bin 189024 -> 189008 bytes efi32/com32/lib/libcom32.elf | Bin 745030 -> 744914 bytes efi32/com32/libutil/libutil_lnx.a | Bin 120020 -> 120020 bytes efi32/com32/lua/src/liblua.c32 | Bin 116432 -> 116400 bytes efi32/com32/mboot/mboot.c32 | Bin 10776 -> 10744 bytes efi32/com32/modules/gpxecmd.c32 | Bin 1692 -> 1616 bytes efi32/com32/modules/host.c32 | Bin 1904 -> 1828 bytes efi32/com32/modules/linux.c32 | Bin 4772 -> 4696 bytes efi32/com32/modules/prdhcp.c32 | Bin 3232 -> 3156 bytes efi32/com32/modules/pxechn.c32 | Bin 12976 -> 12900 bytes efi32/com32/modules/sanboot.c32 | Bin 1724 -> 1648 bytes efi32/com32/rosh/rosh.c32 | Bin 14248 -> 14244 bytes efi32/com32/samples/resolv.c32 | Bin 1960 -> 1884 bytes efi32/com32/sysdump/sysdump.c32 | Bin 15928 -> 15892 bytes efi32/com32/sysdump/sysdump.elf | Bin 19488 -> 19424 bytes efi32/efi/syslinux.efi | Bin 174824 -> 175048 bytes efi32/include/efi/efi.h | 53 + efi32/include/efi/efi_nii.h | 74 ++ efi32/include/efi/efi_pxe.h | 1743 +++++++++++++++++++++++++++++ efi32/include/efi/efiapi.h | 890 +++++++++++++++ efi32/include/efi/eficon.h | 302 +++++ efi32/include/efi/efidebug.h | 110 ++ efi32/include/efi/efidef.h | 211 ++++ efi32/include/efi/efidevp.h | 402 +++++++ efi32/include/efi/efierr.h | 67 ++ efi32/include/efi/efifs.h | 116 ++ efi32/include/efi/efigpt.h | 68 ++ efi32/include/efi/efiip.h | 459 ++++++++ efi32/include/efi/efilib.h | 895 +++++++++++++++ efi32/include/efi/efilink.h | 177 +++ efi32/include/efi/efinet.h | 340 ++++++ efi32/include/efi/efipart.h | 61 + efi32/include/efi/efipciio.h | 219 ++++ efi32/include/efi/efiprot.h | 757 +++++++++++++ efi32/include/efi/efipxebc.h | 464 ++++++++ efi32/include/efi/efirtlib.h | 141 +++ efi32/include/efi/efiser.h | 132 +++ efi32/include/efi/efistdarg.h | 33 + efi32/include/efi/efitcp.h | 391 +++++++ efi32/include/efi/efiudp.h | 272 +++++ efi32/include/efi/efiui.h | 54 + efi32/include/efi/ia32/efibind.h | 284 +++++ efi32/include/efi/ia32/efilibplat.h | 26 + efi32/include/efi/ia32/pe.h | 595 ++++++++++ efi32/include/efi/libsmbios.h | 132 +++ efi32/include/efi/pci22.h | 193 ++++ efi32/include/efi/protocol/adapterdebug.h | 32 + efi32/include/efi/protocol/eficonsplit.h | 32 + efi32/include/efi/protocol/efidbg.h | 210 ++++ efi32/include/efi/protocol/efivar.h | 133 +++ efi32/include/efi/protocol/intload.h | 27 + efi32/include/efi/protocol/legacyboot.h | 119 ++ efi32/include/efi/protocol/piflash64.h | 121 ++ efi32/include/efi/protocol/vgaclass.h | 95 ++ efi32/include/efi/romload.h | 41 + efi32/lib/crt0-efi-ia32.o | Bin 0 -> 868 bytes efi32/lib/elf_ia32_efi.lds | 75 ++ efi32/lib/libefi.a | Bin 0 -> 90338 bytes efi32/lib/libgnuefi.a | Bin 0 -> 1852 bytes efi32/version.gen | 6 +- efi32/version.h | 6 +- efi64/com32/elflink/ldlinux/ldlinux.e64 | Bin 140488 -> 140544 bytes efi64/com32/elflink/ldlinux/ldlinux.elf | Bin 587408 -> 588836 bytes efi64/com32/gpllib/libgpl.elf | Bin 351028 -> 351052 bytes efi64/com32/hdt/hdt.c32 | Bin 190184 -> 190152 bytes efi64/com32/lib/libcom32.c32 | Bin 202768 -> 202800 bytes efi64/com32/lib/libcom32.elf | Bin 950353 -> 950221 bytes efi64/com32/libutil/libutil_lnx.a | Bin 120020 -> 120020 bytes efi64/com32/lua/src/liblua.c32 | Bin 131888 -> 131840 bytes efi64/com32/mboot/mboot.c32 | Bin 12704 -> 12656 bytes efi64/com32/modules/gpxecmd.c32 | Bin 2448 -> 2344 bytes efi64/com32/modules/host.c32 | Bin 2752 -> 2656 bytes efi64/com32/modules/linux.c32 | Bin 6200 -> 6104 bytes efi64/com32/modules/prdhcp.c32 | Bin 4168 -> 4072 bytes efi64/com32/modules/pxechn.c32 | Bin 15192 -> 15080 bytes efi64/com32/modules/sanboot.c32 | Bin 2480 -> 2376 bytes efi64/com32/rosh/rosh.c32 | Bin 16824 -> 16808 bytes efi64/com32/samples/resolv.c32 | Bin 2824 -> 2728 bytes efi64/com32/sysdump/sysdump.c32 | Bin 18928 -> 18864 bytes efi64/com32/sysdump/sysdump.elf | Bin 23562 -> 23462 bytes efi64/efi/syslinux.efi | Bin 179096 -> 175192 bytes efi64/include/efi/efi.h | 53 + efi64/include/efi/efi_nii.h | 74 ++ efi64/include/efi/efi_pxe.h | 1743 +++++++++++++++++++++++++++++ efi64/include/efi/efiapi.h | 890 +++++++++++++++ efi64/include/efi/eficon.h | 302 +++++ efi64/include/efi/efidebug.h | 110 ++ efi64/include/efi/efidef.h | 211 ++++ efi64/include/efi/efidevp.h | 402 +++++++ efi64/include/efi/efierr.h | 67 ++ efi64/include/efi/efifs.h | 116 ++ efi64/include/efi/efigpt.h | 68 ++ efi64/include/efi/efiip.h | 459 ++++++++ efi64/include/efi/efilib.h | 895 +++++++++++++++ efi64/include/efi/efilink.h | 177 +++ efi64/include/efi/efinet.h | 340 ++++++ efi64/include/efi/efipart.h | 61 + efi64/include/efi/efipciio.h | 219 ++++ efi64/include/efi/efiprot.h | 757 +++++++++++++ efi64/include/efi/efipxebc.h | 464 ++++++++ efi64/include/efi/efirtlib.h | 141 +++ efi64/include/efi/efiser.h | 132 +++ efi64/include/efi/efistdarg.h | 33 + efi64/include/efi/efitcp.h | 391 +++++++ efi64/include/efi/efiudp.h | 272 +++++ efi64/include/efi/efiui.h | 54 + efi64/include/efi/libsmbios.h | 132 +++ efi64/include/efi/pci22.h | 193 ++++ efi64/include/efi/protocol/adapterdebug.h | 32 + efi64/include/efi/protocol/eficonsplit.h | 32 + efi64/include/efi/protocol/efidbg.h | 210 ++++ efi64/include/efi/protocol/efivar.h | 133 +++ efi64/include/efi/protocol/intload.h | 27 + efi64/include/efi/protocol/legacyboot.h | 119 ++ efi64/include/efi/protocol/piflash64.h | 121 ++ efi64/include/efi/protocol/vgaclass.h | 95 ++ efi64/include/efi/romload.h | 41 + efi64/include/efi/x86_64/efibind.h | 380 +++++++ efi64/include/efi/x86_64/efilibplat.h | 26 + efi64/include/efi/x86_64/pe.h | 595 ++++++++++ efi64/lib/crt0-efi-x86_64.o | Bin 0 -> 1328 bytes efi64/lib/elf_x86_64_efi.lds | 65 ++ efi64/lib/libefi.a | Bin 0 -> 109490 bytes efi64/lib/libgnuefi.a | Bin 0 -> 2472 bytes efi64/version.gen | 6 +- efi64/version.h | 6 +- mk/efi.mk | 25 +- syslinux.spec | 4 +- version | 2 +- 184 files changed, 21363 insertions(+), 129 deletions(-) rewrite bios/com32/modules/gpxecmd.c32 (96%) rewrite bios/com32/modules/host.c32 (94%) rewrite bios/com32/modules/prdhcp.c32 (67%) rewrite bios/com32/modules/sanboot.c32 (88%) rewrite bios/com32/samples/resolv.c32 (95%) rewrite bios/com32/sysdump/sysdump.elf (62%) create mode 100755 efi/build-gnu-efi.sh create mode 100755 efi/check-gnu-efi.sh delete mode 100755 efi/find-gnu-efi.sh rewrite efi32/com32/modules/gpxecmd.c32 (96%) rewrite efi32/com32/modules/host.c32 (94%) rewrite efi32/com32/modules/prdhcp.c32 (69%) rewrite efi32/com32/modules/sanboot.c32 (88%) rewrite efi32/com32/samples/resolv.c32 (95%) rewrite efi32/com32/sysdump/sysdump.elf (64%) create mode 100644 efi32/include/efi/efi.h create mode 100644 efi32/include/efi/efi_nii.h create mode 100644 efi32/include/efi/efi_pxe.h create mode 100644 efi32/include/efi/efiapi.h create mode 100644 efi32/include/efi/eficon.h create mode 100644 efi32/include/efi/efidebug.h create mode 100644 efi32/include/efi/efidef.h create mode 100644 efi32/include/efi/efidevp.h create mode 100644 efi32/include/efi/efierr.h create mode 100644 efi32/include/efi/efifs.h create mode 100644 efi32/include/efi/efigpt.h create mode 100644 efi32/include/efi/efiip.h create mode 100644 efi32/include/efi/efilib.h create mode 100644 efi32/include/efi/efilink.h create mode 100644 efi32/include/efi/efinet.h create mode 100644 efi32/include/efi/efipart.h create mode 100644 efi32/include/efi/efipciio.h create mode 100644 efi32/include/efi/efiprot.h create mode 100644 efi32/include/efi/efipxebc.h create mode 100644 efi32/include/efi/efirtlib.h create mode 100644 efi32/include/efi/efiser.h create mode 100644 efi32/include/efi/efistdarg.h create mode 100644 efi32/include/efi/efitcp.h create mode 100644 efi32/include/efi/efiudp.h create mode 100644 efi32/include/efi/efiui.h create mode 100644 efi32/include/efi/ia32/efibind.h create mode 100644 efi32/include/efi/ia32/efilibplat.h create mode 100644 efi32/include/efi/ia32/pe.h create mode 100644 efi32/include/efi/libsmbios.h create mode 100644 efi32/include/efi/pci22.h create mode 100644 efi32/include/efi/protocol/adapterdebug.h create mode 100644 efi32/include/efi/protocol/eficonsplit.h create mode 100644 efi32/include/efi/protocol/efidbg.h create mode 100644 efi32/include/efi/protocol/efivar.h create mode 100644 efi32/include/efi/protocol/intload.h create mode 100644 efi32/include/efi/protocol/legacyboot.h create mode 100644 efi32/include/efi/protocol/piflash64.h create mode 100644 efi32/include/efi/protocol/vgaclass.h create mode 100644 efi32/include/efi/romload.h create mode 100644 efi32/lib/crt0-efi-ia32.o create mode 100644 efi32/lib/elf_ia32_efi.lds create mode 100644 efi32/lib/libefi.a create mode 100644 efi32/lib/libgnuefi.a rewrite efi64/com32/modules/gpxecmd.c32 (97%) rewrite efi64/com32/modules/host.c32 (91%) rewrite efi64/com32/modules/prdhcp.c32 (60%) rewrite efi64/com32/modules/sanboot.c32 (97%) rewrite efi64/com32/samples/resolv.c32 (87%) rewrite efi64/com32/sysdump/sysdump.c32 (68%) rewrite efi64/com32/sysdump/sysdump.elf (73%) create mode 100644 efi64/include/efi/efi.h create mode 100644 efi64/include/efi/efi_nii.h create mode 100644 efi64/include/efi/efi_pxe.h create mode 100644 efi64/include/efi/efiapi.h create mode 100644 efi64/include/efi/eficon.h create mode 100644 efi64/include/efi/efidebug.h create mode 100644 efi64/include/efi/efidef.h create mode 100644 efi64/include/efi/efidevp.h create mode 100644 efi64/include/efi/efierr.h create mode 100644 efi64/include/efi/efifs.h create mode 100644 efi64/include/efi/efigpt.h create mode 100644 efi64/include/efi/efiip.h create mode 100644 efi64/include/efi/efilib.h create mode 100644 efi64/include/efi/efilink.h create mode 100644 efi64/include/efi/efinet.h create mode 100644 efi64/include/efi/efipart.h create mode 100644 efi64/include/efi/efipciio.h create mode 100644 efi64/include/efi/efiprot.h create mode 100644 efi64/include/efi/efipxebc.h create mode 100644 efi64/include/efi/efirtlib.h create mode 100644 efi64/include/efi/efiser.h create mode 100644 efi64/include/efi/efistdarg.h create mode 100644 efi64/include/efi/efitcp.h create mode 100644 efi64/include/efi/efiudp.h create mode 100644 efi64/include/efi/efiui.h create mode 100644 efi64/include/efi/libsmbios.h create mode 100644 efi64/include/efi/pci22.h create mode 100644 efi64/include/efi/protocol/adapterdebug.h create mode 100644 efi64/include/efi/protocol/eficonsplit.h create mode 100644 efi64/include/efi/protocol/efidbg.h create mode 100644 efi64/include/efi/protocol/efivar.h create mode 100644 efi64/include/efi/protocol/intload.h create mode 100644 efi64/include/efi/protocol/legacyboot.h create mode 100644 efi64/include/efi/protocol/piflash64.h create mode 100644 efi64/include/efi/protocol/vgaclass.h create mode 100644 efi64/include/efi/romload.h create mode 100644 efi64/include/efi/x86_64/efibind.h create mode 100644 efi64/include/efi/x86_64/efilibplat.h create mode 100644 efi64/include/efi/x86_64/pe.h create mode 100644 efi64/lib/crt0-efi-x86_64.o create mode 100644 efi64/lib/elf_x86_64_efi.lds create mode 100644 efi64/lib/libefi.a create mode 100644 efi64/lib/libgnuefi.a diff --git a/bios/com32/elflink/ldlinux/ldlinux.c32 b/bios/com32/elflink/ldlinux/ldlinux.c32 index ccaf501d9766efd065c9252f2267f21aca8b8a16..52e8faf3fde3f051fb85df07580b030566bf4023 100755 GIT binary patch delta 34559 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 delta 34058 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%0Djsfc#&XlnsdC@_>v9uy7QE5L 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�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 KWSdkwMv1I7 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�nueUUhT?RhV5(n0rRs5M>iOv$f zHrJedF8T4bBwrjzcte`vW{>F!B9qL6qJfhsGN1Zwj*f3g!cptyWtl8Lg?A8s_F;3M zkn6`U^23z^H!%rrBCPNno9J{p)h?-BGCZHVqzzNVO(cZCceDVeeVbLI{Y{r-Nxf8X!$xifQS=FFKhXU@!> zyY5`)dp*@R+xz9&uLweaK@hG6Itln+f5BgH5CR2Xp}jza=l{D}L4*LJ5g4VrAZP$; zFA^TszdDd4?)u1;m=ihu0tgEsEP?O_gf}51HL33{2yZuu8#yLJco)J-9#4U=3WAx( zQ=61YgRq)EXR0ue{goid5Z;6EK7{oUK7c?uaSntH5I*E_D~;21Hh&3EUqjdeVJn31 zAZ&y1z3}{hc@TC($cL~8!rmr%g%A!yI0E4Zo_3VuaR|l2^Z%7VD1&ecd-x+foQH4` z!cUywX9)k{&%biK2H^&T+dO^;f&#$?p&G)U5FS8yC_Mk)qZi_TL8yiBH;aLUpYn`< zAUuOWxE447Y9Tm5aE9Otp*aM76D@IvXAcN1A$an1FTghZ*_&fq!1nyv2hbOSKZK5E z_!9u3D}+E!(4Ausz@GfMSCdA2!*dXX;3jE(;kh4#{tyO07ziPR=MM%P3Sl^phXIb{ z&%;LZ2Ls?32;-Vm`Z7F^hY-!vVmQVE#zBbB->bdoK=x8e=hyKcZDT>0D#8`l=i_>M zQs?LKABX2t!|C6;J|4L*l)Xj=JNtRuY(nb~VG&*6>_;M~1bO3Ko-c8R?sx9v@weOa zC9>(?&VDf~oSvuM_CjlKzQF0Pn&;#1zfgV`UEnf;mbtpO6kecw*MYWk@%32I?D=FH zb$0dZIRAyzk6&P8GacvJ$HTWt7ce!7O0IsSjBa)H^Vt0YBlGFcP~!Fr_4v}ZZhc5B z9p~ofk@G^{TXZ?3e*3~8yiK>d`Dwa2({{~$$y91{^CQ1f=jMJMx))gXrGuOInRxbv zUJrJEKHm9-QnilH$7^0-YK@kD2U06~AvufMn)}5JeSz0;FH|1$LjLj>WVHE(!Of*p zT8tQV=>;ln^XKDXFLcTJLaP&8=u{V9bNUO7-vKgrSTC@{9`L_r(51{>N-(G6IS@;C{;SVOe z9WT&E54?j7SV`1)sSX-|Ma-Kqq!)HV1v+3*%Nd*j(#gBgP@(WKlq>vA5T^6^U0`5# zxoT)J-W3=O11p`!>Nh(HA<)%;jbM{Ffj=zkwbl!{XDQi+mh3n0W(f)i^G_%PtVXla+TB&a{BFt}_va)k^@%PhUfX zr4Tn`!l$4*nJz?_%Lx{P$am}zgs+_V5CE>bP(K8&!eMAI78IbBi<W}y zPyJL7?rGI{8ZdYWG%kwgM??9r?^WxM@jrmRa8siae+Uxzxl|B7!^IO5-U0&ej~jL1 zHpDkI8IoRL(o$eqp338+L1K}x(wcY!v!TItAhAyM4FJ~OY}AQ|I$TH_m3BTz&=c~L z%$(pUh;m(}z@`(%t6^H^!n*$nZy*^8eDPQiUgz-^AVM#gB|SO)W5`defiwp-9tlhy z9zF%fq>O8MD8#Qoyfe=q02O)zgDrV{4di=HBEobpH9isYgCM_t2*Y8>D#1Zo%;VEx zNc;T_@=xRmpFmevz`XS4@e=4^+%@Lnu{bK1@H1)X(MQnWs~rh*zA%3wG>}{;2&0_U z`1`=X_63a+%K;^I14Gw}$7Senm>I@&4o^tepiik0LU;o+fr0ejR97GK-vQC2f6y3D z0DGO4L73~wh6EV!)e+{RWBfKWxane}9XJXMB`qQiO1d5_sd>+Op+Tf0p+Mp{f^e3{ zA3!{}$-GC=RW_NHEkR=Cpz7T@eLJ*l5O2ZbGvT2We9C4#J_{ss^MvZ>VtjcE7=LSQ zBS$6B18;Cr$Mg6uP@)sC_zdFlJjkyGL)DANT|k82SHe867b%SC-dc6zf$>ftL4UCI z9eBJMD4ox?MpN98!1(9Dn2+TNt)a&uUkO44kI#k%i~j}pk;nIf2rUbVaFfUJ|2eS# z(DV2k(Bm`E1?uC9E1us z!eUV`vTjg;8&uFoP#2@Wpysa|*Kc7Tw$#M3O@OvGt#6z~-$8@#e8L2!4jCwMd81C5 zh2NkDJ}@u4aRLqWPi!esKcO@GapRCo0&=x zI42Qu(qAO__qTN7$^^?Z>T%ZF7VfQ?(e*KqWOpg^bPK$01=)W~qmI_QsBabh7Zkjm@!(j*pU11Z0uLNYNIsE%obvfDU)njc)gU zPy(A8IlcxA6fPzWtK}n5%AgBEgCX*Q1}iQ#4v{m^SHSLi7-!%ssP9dXfVRE^K<@}c zYR=#ZvB1$l7_clpMx%kDye78(M-W*J7@8iO{sAcEl@^VL#s_NtdP z?+zlK4D-Hzh<=0kg(f2J2=s2iKyw~H33xS2J-xyBbjT0iRNtUZh=lm$j~bQyXBZ;$ z1F-e=BFw?{{NqNECc>D7!0w}@UME2G6%QLdq5*)*U}t0EN_GNfO*kyqqj-J`kXX|Y^bIjqm5s~id-O4$ar);5zd$%#~ z;ju!Fhd35-Eaq6o@eIduj+Z!AaIEC0aIE22%TYL`qE5w5f;&&}=IGBckYf!o594k0pOy!u)F`Hu!N2R{$ zpEzq3Duz{X8HDqMu^i`eT+A_vqmkn>jw?ClaLnbng<~PdLmb1wG7;FfjYWJ0^uQSL zF%#kHB_cTb5TOtg`VgTU5gd?9h;c-y=2(FU&S(wCY%G@u3?Rb#vJnw?%82{HCLzKq zn~Mlb>lPM=!9;}hB@Yp|ZF}&cC2)+`8aPJuB|;G*EFi^*cVQ|ag70?*aWpWB_yaJC z7=UgYAnaBu5y5A_g$Ulbg4h$L5Mpo88bsKJJpwd4!WvzR3H?Bg5Ya1vv2yGWQwR~f z79ApNo!t;az=j}#li-P%4#p7?HkLk!!*Qn!7$yh-h_K5JL>vcdhzMKkAjBw`cR#_l z*-?fGhY1t$I28~anQ%n#(Z?df9y=0o3QRb}Hbj`jDj>pS#QC7KFvbM-WvPg*iI52C zxUpS~cocL95qt|HBKQ`|5c?BhkJ|+<=Kd^|Ia}L z=W`?C%S70O2->w7u@0095qyg+h>u{b5yucA4-tHZJ&3R$EJOqc=8zd52E$k*f@4{X z2+m6xBKQ+$5c9#PA-)e|jR>Al1)@7BFKdtpm58tryoLA}#vHK~j5*?XP+CL^V~z+; zN-ZMn^UTli0o@|l?mB^wu0?DIV~*G!#vE}Qj5#8#51xpyr}st#kJSeewqX8<;Ex3$ z!t4n|+zexm=nrF#2%C=nh~PMeAg+Y@ABqp)J%u4=!aPOn0%MN|yXi8I)L~DbO3P?thg)j;VkF?Vio8B zB5VpW5y6F9hZqDpfcOd#auC6N--rl4<|ah&mNz5z1sy;v1sy;<20DP42lE{fJl#Er zu$w7FG+zcKz=t$gIuT))Qj9nRbO7-<=l~*kqUDI8paY2DZC4=ffTa_07|eS_*qYr! zTm?FS2%Fbx#1Z(e0k9Hu05Ju00MP6-66QT7ps#%e5H|N(#L=Jwh~VeDAx09x9q~QT z0Yummdm|b^2M}Sy=#MxCbO3QI=m6px&;i7?paY0_<$%=(I&cN%zf(LBLNQ?+5yB8* zFCLBvTduK)gNP7`7!5jr7y~+hSPly=Vh9nYBgVpliwIl4xrn2{4lu@uuo!U?*a1Y? zOBxX^paWNM{tp2|fC*oK4j_6FAsul6*a5_N&;i5*&;i6@paY0gK?e{If({_QM1;+V zJ;3H8P6Hi4gpJ~MMA&8LAf|afiV-6hxGgLFFEa5Lj;Sso8B1TdgRJocDoYx2&lz<^_8|%{QibYM65&>lunQB z_G!oCq}%baG0F-s|7pkPKn*2^Cs4~i8ZyC$Y^QM(x-~ykUxAB7+(M-Z0h${bbmxQ) zSo6vF03_6EleT(K9h|p7Fcw_Go1uq|1jd!QTXn=t>7n3?!}T z%!yM-D_S@)w39a@`rw}3K4o&oW1~LaBKoo)0PP4!iSj$Ij9~QA7MZ zCwzHp5!30e_;??D9xUQteY)2(yInkd71|O^E#!llv~xnVHzVHg=!xCFA7AiC^9($tEG@;$-r{a7I6lnXko)XwxSu6XM=10 z`{dsJr-RJ&1-kheCuN$A@)I|~Ut^nzF;M6`RwzyZri$HdWwmzuL`dCE$4*HmYiZGx zg~UR8PL1|L4y9#U$;ra{A&t>W2h(Zx)Q+uw1--DOu|)nilNL{nB&(>$G=CCK`%e2E zw4m+uu|7edYsx-YsigG1p5P)xh;_|OcY=%Loa31^WxDrEfuJ8!MmA)@c!PT-83bt? zdr+oMn>lO7@r3wT<<3L9J?;3}W%SteF(iY!%%JY~lZlXV!Kjg3x*wHJDWUZH8SOii zK%!)*mP%7c_%C%BQ&lU~_JpWGk@MZO^!AKCt+r#|EryzCB@LEQ*-)*>wA;+y-3MdI zj2ajsX@dfP#e>DrFBm%!Ks=~m#ONlAk#yBeZ|4e#W?YcPV*2^auI8&4D>6FR!=6bI zKvRhliEuB8=mmXx#xhNsJR(H|iU-;0kFlBl^P(y@nYEXd`ZlCxM)a1&TD78}i57~( zjH5z#tHb>#4%u7a0mv|k-bG|-QiN8VQS2!mtYHj#WA04M6~lWrVM@yhOwQuLM~t#d zX+$7S8qh1{B`8oDf!;kt-4tIIWtT?8gBA3PS)I+{S#@^l=k7=CH|A$=G7+JrQ4Q@O zy!66z31bX6xWsy6u`oW*NtRoHMla~oN7$zrMFa&TwPLYbm7|=2nexF~D7nLx@SI^c zfh5aS;nC5vXPQwW;$a*c!PrL5z=zb3mrQP{%ZN}vF;c-A=`1t@jAE6eDnwa6gCqF2 z#?;xq7h8#*XwNTW6LkxdZG>mE@+G)nVzGBscgtbqHld!zzDJ(KjAicb8TGWujMm2@ zp4khkJ@9wCJ-x^nYG3Lpi)UC7Q7y8I&9Z@&ILq9s+RI{DQ#J9da+XD{78S)uJXlRr z=5!m48mH)darBT@`L_c;q70M=>=7lZ++mNXfy!0(i0Y@Dher!7rg!Fa?U42k&Vm{# zuDZ|#ZSSAgKnySeu+Jjx@oID%PoyYK4S`7#R#n@*7SzhJzJ^y#q25%|0_cIRE}-wstBjks9UObNaL*DEk1Zq z&(Y?3j&480{J+%v3u=CFiRcbWK$>(+(9+h4em)OXx@?uM$MXa+iGJiMeJjyZqsgah z6FZE?ekz?GsDsw=Sp(l|GqtE~t($hU`d6SG14$CgwLSO;`EsUr65sOm2JMvHr84DL zm@uj_RP3;;l8#EKD@zyj=+Qv3;gPCA5RKL`yI(G`s4ZWEn(skRE$B*)()$bA2Sn{* zz1d$=FO^O8QrZ60ZV$H0Isf#cK@0uJQX0L`lT^}q3kQ%l=qC%~$UF4@!caFf;L6AU zfm*~$I(X4qa-SYu!sS7&*{H0^&mdl^sok7@>ypcl^d8o-1g5Cl+-Kq+Tu37x?xgD z!DV7_V8#X0P1^!T9G<5e0X6v}8M2REnk4c`Izn7jd( z1F2lubp0Xstc{vWlou0jpN;PMHh=5>gA7$-9R}IC~YSmV3kAFDt9Z40}l%wttNb-sM8`+ z9Y{7Wa#)E-l^{(e@J98WcL^#@x`LX6<8NEU2xC>k$tq!Qi|9?wZ~K{lbVXMV`KTIg zq5ZBiqP8m0Fd$-cnKNpvs-Mql2{{b>Tcab7u)lnMU%QV@PEngYeTUWN(=Zi^Ah(n` zS&sPj*|v*O&s3>DQ>ptlP}2tLWfA~;*%;KyUbE;q@ixSTOmi^~^kOu8(^c}@}uo`DEQ(VqWv}+Sh9*bW}CRh;f2|T`#_t-%6>qj zO~K~R)f&QY*K6JuHKCtcWgn#-)E9g*_<}O$Y=ft5bX5(Ftrhl-qV171Hb+)1Uzi`> zV&x}U@_kfGS?b)>CKQ(gmwwKIS&$s(iwAe3a_iqe0mgWKsmNl2x>J^&l=qxj1rK0U zB`4b#_pp`SDwprwQf<^vPjEcZAm9|?RcHh`pH<}j zTOpJAADDcBMkjY6ztE+SjC*?9V3vH7Zia+Cn4o6~_voqQj{3R4{Cp7X^=jrH(5Fzg zF5iDye`21@vVxSNGRRuxkS9t{?6lLlwTkv&jCrx zaWX%x4s|fP%Ob0+6lY{NnCX^y*#F#9^;X%Ut=HJ<&>xa@!A19!4Up6VRx~J-C0OFM z_mp&cV|jSHX6j15xsnM-2O_i;3Amm((-ABB4>DnkrI52+`Ro)>s%+LOU7OXn0G`5( z)Zs91`hy|1M3AZ-7TSV-x1s|v(y|r4W=SlPZMT}tVEr;S$)J>K0uLcbYE|KoZrl&Dh><9=3M4ujd?C0< z*#-LzkZfd6%$$UohZ-|CK&Es|5+~snpP4`lGXVSX{#9_%!)+4l5{RL>I2?C#2UkH2 zRgWx?o2nR#I0f5VT;c-*xRxLTtb6NDvF^FrP1Om?=d@5$T2ypW}sC1Fc3I ze=O~|%9kY5uvMPqRT{U-e@5>MIOtvpIOxGeI4L$1J*nte!lk$X$E6gPe{A@uG)7zR zYdlpcK>2LruG;O{pn$)f$GT3&GX)B3rhG~-t?Jk^kEL4U)!AY6R$Qo)IicMcmfSm@ zo$8&9k>YBk^Gp>6(`Dukq&@x6Jh1c69V&R>COY;g6xlLLbrlsfKCZ=omh>h`0A*jsl{UmOYEN zo0J4)0w}g+r4y0vAGK-48%`E6XCJ7MXQp%?VzOH%Y}%icus5bUi}>4KcA&tf13Nv52V!>;UkOeW-x1 z(;nhNbLbH?FPNd6KhAWtwcWJGZYqqoh;5Ku`Q

^GhAx+Z1m(IQ=oRiIQQv+y)FK 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 UM6txzbE^AAk59kP-8}UF0obQIrvLx| diff --git a/bios/com32/hdt/hdt.c32 b/bios/com32/hdt/hdt.c32 index a2253516493ac005e90b79f9067a08174b2f99ee..6d6ff4a652049e581ec905c5a59481aa42bd4bf8 100755 GIT binary patch delta 11413 zcwTLq4SbK~{>QKD-ewzPk7d|wo+qQp@|@6QZ#5`P}!H-~GG)|KIC%d0$WWb$zez^|`Ny+t!xV%qy$8 zAUe3TpHj(6sl0`an#5L=7%F6FfC@y03RB7edM!2Vu<*$-{yDmD%EtW@wE4EOfA1i? zi|`)8`v{vPe>1{I2p>y&8^U&k9g_Y8;Zuaq5K1L)7sBTVdl2>_e4)I*e<6H>@GZh2 zrA#aHuoNCe_)hu$zIVirBb<=H?j@JFbj?fgJ6NPFwml6Y;fjw3(R5f4W^Lei076vCY*{)tAY zhY*7hi_lOi#ewk%jS-q6Bp|euvb(@m2#Jmk+92K*;U0u!NB+Htw|AsFIO3N7J0hbK zLT7|72;HPYimwC!$q8-;S!`XFyQ93k7!n~p&Ev|w;hoH;VUH+Q`w%~tXpX|_`6Y9+9i zZ#pd8H$BAFUS^GL^nE7R(FUKX4k&0I+|b+{>Rauazi)b&%d{!3bbW_I znBM7d7}Mun4m@4kr`%8<6zmC(i#YG{>qftV=AjME?_5t8_zqMZbUCV%%drQ;e9OOb zSwGIz-h;l59idv)^vO_*LVO?i%{9||UG6*S8bG!~q%1#DaJgn(qdUHuA1hc+Bo z)7AMfSLgLzqfZU?raAiAjx?W7C|FV}&K%(~afZtWTU<}AbM(qqzj6)vhHJ(bx`uer zcg73ag@l`(TyDAQ=+k|n9u?WI8{Tm!h`S_Fz+ ze*MH}?y>xqx*9m=dSU!sj?Z@avD#Jsx=UOUb$rv=PJ_7o_jWaS)3q=ZxI7YC!#7>e zWk89mexS>M3l0NJ>veEQEgs<=m%LwdNioiq&U4lGcP+3pTn0sXJ>J90nC-BTBRJ}M zSH5v+WUW&J1*_{s>iB{^p>gIUmnSc~#CO1@g}tuy%Pu>rT>VD4q*3krys56@fyP^K zDzGX9su`H7aGcP_)v?ooFtDP?P@Lg#6`~e_^E2&p63cs_UgTV@s{QQro9LkGL#4{4 zd_BtZRvOl!kk2o~)Mqv@)JxhDbD&DVi2F^@s~8+8LSinygdOgq*s5=TN>zs^1d*rL>kD30ZW!EHAhBtAGDQH z>^1Oiq&JjkbwuiSgaKFISL#uzkE$vg9(b7Z&x}pzAf>sX8p{J^n1WrSwAv;QjK>uD zV-BOGgCF3rbw{-N!QU?b4h9de)@p;)&x6Nq;E>%#(gA2M^cStZlJB41+#uVW@}Xf%;(lYQu6FJvIa#l;KprS_~KpQKgU7>YCJl0v&d^q}7Y! z(O7tL%_ODfiATGm{P;x}WXc1HaM3i}WoAo-|3LLI=+Iv}tbvh~JcVPe)ISavpE{?l zYYNltQ1LB@w27pr!ecShw0cuKz~l1I83DHk@HF!O8VCP(k_uxmf=l%bH9;)q`T3t6 zybqkkh&MZ4!$hdO*>p^sbT|qF7=#Ph3-bI*c(gxW>j3f4SxnK%NJCZ10PjZmi>tMH z+a)2eI265ilLq&pr%rFeN@?&f#_|_1 zz(xDCdP&mxs2E!W|921r(okW}_gbwGkJN^Rqvk91tfa4SrQ51iGa1nVbP$5A_OLuZ z9u1E5DAii(|Aq1%m0knefK44!+KLOC8DpsDrNR<)P`=8m@?yArJZ@c4;sNMUoq`5d zN{6ZFFc>P{D$oCj`sGF5=lf#-9da-TG58wFU+as;B+VPAIlR#8((RanD2Iidip9mZ z(jjUHB6m)MilxJ0cnw#lX*E$sd?!X+g#mPx`dd+c=xexK49Fsof2>TlZe_<+EEycQ!(acaSrJOg$cO7p@ zOIQ6J7(l>U3_=Ewf+=W!NU7!lb~@XH%ceV)&P`DDDoFl>%=tK^KfbJ0u%sKHe#I(p z{lPHkwBz|wFwx<`5ztihms)KXk7Pp=*E75xGyB06NzbXTg~Z zr*iGa!ZAzI*Wlu&KWKF(&`$5b9B(c$RFW7_hAE16XlgtLuKUnD50;L`QXDGv z2cvx2@7kIgrjKEz9D&X5_Wu7K=4i5G0(1Oitf4BTfqb~U4mR;y zE8|Ucu*@;Sb1)zfif$37rX=5gZ^epek z6|IU*8F4OLR)`bjY)Q|9i*`M)t#4*b^W$BPraQyspAOM#iMYH3^|A`RQ#c<>ZuKnt!>=WB7lkW}bhr|tN)9&ESn*&OSmfAEC&9pRr?G=ddvBut2E6ypB+XBzB}tAE z7ox-TVyIX;m<)@b!h5_xHj9mDKyS*AeOiAIcRI|>kVP(2m?fMnoGHu^mIy0_Rl=*n z>q37yQI7*l$oGhFv%n{BJzA9WREVXFbhaF}d z5>^T?3H{}b3=`gZL(_$~mXzVbOyMZuSYe)Ufv||=$$gz|+;R4|@VUcjHaGkJpl~Kov zluO2;g2(QuYhIU>lBG0A7$S@kCJ7%FW(vm&^MobB4Zf-4kwdW3u`b zMhT;ZiNYjdFJY?iVPU#3LzpGpEZi#GAuP37U+tERGU0wMDtq z=Q_C(#UAh?G)r=SC2>{>A=g2}Bv$t*603VOi5)(M#4;F9;zZxnN-LE>cF`)4#N9iI zOu$={%m~h}9myY{EfN>C6w=VD7kM52AUnVxByIv}WRh0tPRtgiD-$SeDVw)YAzJ!;N90Wtjcc5a>)XVI9wEhn)BvbL= zDw}0YmqHWd9CXBvaTtpx+hUH%bgi0_1GP#ZJ7A8! z{bUtZ1+tS?hsf1f+DL5l$4HzYPLeo;ohETcs;~@$_(+^Ot4LgNFOfJ?T_wXYAd(+s zmx0@`u8`aD{s%FF!&?aH!NNj*kA;QATt$;OcE*rDLG|P>SXfBhyAntoSrW-)t&+$) za0(#r#MF@eAv&@yL`UM7+RN$}?|&*Ie_&xDf5pN=F2!7u^{}vz_3`?U4Y06~5Zfp+ z1`7)ri-m=J1#?gS4)Kz4&=4695t4ZCbI8WnR7kT4RLw{z#6q6Mrbq69y2)?gF>(V` zP2#jxLNfZ?$7{v7c>BxfxEB(StEq1$yU$+ znTSo4#6|ol*#;UQi=Y9k189J}0S%D2U{{hjV^@)F@m7(z^IRqCKm#Q2I?F-aM*NrK z{SR!1&4n4?K?CHy&;Z#U8Xzm70rEUH7qTNXK*nL=Av-|>WM^oA?1F`d?2Cnm`~Vst ztFgC`xb~!w1F-Ha$NL}H6$=kDK71LV8V0ND$B3fU7Hu+q?g$;bt0fb5M;h3o?jkPkouWGprnaxXMM-ivjB zTmlV{*fZ9V_h_}j8aXsTuEIJ%et~s>#0`H3`4BcClHa>`GlE+|8QBl(0EsI{Ik_Af zAp1iDWVBYt$N|s*IS3jcAAttQbZCJ58X6!6Lj&aBpaHT1dkHxN8dyOCaNqK01b31k zG6NbQhe8A7eOg74xXVP7i=Y8=7&JhBjCFt<4h@ixK?CID&;Yp;>i~HY8X)IG1LPCX z0C^Or=3b0sLIdO{&;U6C>i{_t8Xz?^K;l9-oGgF_NNg&j$Wd4a$VaewkxxMbWKm+6fXn@2$cq^F&4Uo@511tFcAH+hyj0V`<$Wzb&`FCi5jKW?(J_ikuld%qv zQ=kD7cl6UFcC!ky1R5Z5HLfCYVZ219;fzWC4eJ281{x^j`~N&P1DtFE-+~6neb4~; z0yIF*#5zFYt{hEfLjxqHE}nc18X)W9075pw0ffwf2FTga0Qmq;LgZR#fP4`eD2zko z4QPNFxzGUlEi^#pK?9qPciY(}c_#mpa6o=V?#a;6`MH@$iZ&RtSd85*7u;=Seew63)orUU z#O41fb&jBg{4a8^j+#VYAH>)!qotMkZ zikDC=|ElNNgF13c`4K%RSx0SYQp*_a2mYgu(b*r|6JdNEp`*7fZe|?H>U#p$2Y#}< zAiN^)h%X7wa~kl=qO=U@}H{$Cu&5&nO8Pn7d-Md%ZL?OEX2xYVc{oZf+-CwPQ8 zu+%saaqFWGe`jznxYBLQHjnXvA3q?gp~LM*|48&!;;+TMhT&#I@qMU&;F28=>xuYzJO1qeZ=F+iJB_VGV|3i{tX=RGDrHC6olTu(;HvX(kx|#L zxQ}J^9Sv{{Qz$7mhyg*CV1&VD9kdE@=sc;oQ-?f6(nomGxHBS(7U z9=neHM~_aIJ4ZeN`Ke2_a{v0#=(%=22R*F7j!#4UL604O108G0p9teFEVAQ|I0oFk z-C#oDbd~1OncmCLnb42{5z<^WBt!b*);$$|&R%Acc2l1R0 zcKkQY`G#UU4uM&78o&>tnVx~gMuRv{mT#l{CG60Of6W5dTJ=38#fELYW!f1r&5f&r7>Cvl=6MBN@ z)M_Ix*!l<(#QS~l>qv6-Vd&{;i)6s=ySc&)e%)vizy&AWGmFvkZoDDA!6=uHQqNb6 zhTLVS5YJ^stv?R-#I7-#)ZmwuOG`a{))|=gbNSrhPK8Q|rdMlY4xz@CLi|#h z94b#*hn!EEVw#edQ|2YJlLL9oP_eAkJm;v~=h^$Uy}y0$_xmmXYpuQZTJL(-v!;!U z%0f1lh2%ult{kjXqEc$(oALL@1g|sHsZoI{2pK9&DFaAdW!T}(@sk5`^uUyl%G0#@ zzOsK?5I#gGLHGz^yX5ac*oE-1r1v1~MfgP0`w;dclp-9Eyn_gb5Dp_8K`2wsuN>hR zLIuLtN|{#X33>P}!rztu@02Tk2BA{o|3Em8@Pni;ApD3>g>Xsosu8Xr{3Pk05q?3q zhHwMnCfonFJiINuqg+1?-yzgO2t)|dc6KmWTRX)fDuKZ+)4-`HD4n}wqVHm2QQ)wVZT)grm7bgJaDZf&RHWU1`>m z<4UuZ_dK;k)bUS8hx?}|cv?HC|L1|8 zK27%6yud%*SG5fG%TRxFxsvG{9@k#I*Z=vx+yk{^%^Mzvf8uF2-&5-ko?46iU8Bx; zTsy!s6lcQxo}21hPlK~O6^`(XMR%9qnJx_VFaK|kACCw4r>p%s5CMs~w9NwNa(@Yl zHLLvXRLLGQSJ!pYEP9{EtjQj;T6+94ytb33U$R|kYZ*_>eX~xiIo)IZ5|4Kd`oE^O zyP9RS-+H`J+tZB#Pv_70izK&0Xt+7RGvomtafS|QcnfHx}LLv zV%LnPL6#&J*jEss^VJXSRI z2&InyIG8E`-RO(MV1iX3NG*Yxop2DGTGviTz`)=FLviy6SE1@H@Gs*aX(|6C%5_<; zRZT5By%h$A?X=H>Oz*_=jd*{%yk7tVGMgA`v9_cgq!Katrlo1sPF^U4SqpAz^`*Ac zVHlY9vy~bt&&yHa$U;Lck_taX2QH=IkRs13F>t3}#m+A2YFNG#C*to7JG~ejj`EN5 zxk-!B;~(GAs#|@#Kr-e=Xsn^)rAPZPcLMSq5A;SPIL|)D@p(ruvqzxn7|-YTs`)T* z!+xzEm-qAFk#HQjYs4U)n&zWCN6O?2$03i*)`ogtDjb6fIwRHmL^Zqa(3g`dPQhqa72oDV6_%mZa8W`8oP|f6p z3Jk%yRINUi7iMFKnqv&3q=9iTl(!L1nRs;I53d2#9QAj&qSfEHv@v5MO#glrPH$pB5YpS%Iz8G915dOv)D!Z&F}NEBXl1*60vf0~ ztJFF%U?N18F-5C?O8FPi;4{~>dQCjs2A(}Q19RFG7Y{~(+rQ8vJKX~=^L=0+#hAW; zS&$_?W`p(7lhTPeO-uQUaJjyut(y_k52N4_i1vO-zXlKXdReP?#REL9@4#KoyxW79 z@u11`IJQfHndm`eV?(8h#XPpZDxzWe-_YXi{5mLB#*f%WUO%9eB#Ebf5T`$&afqoq;r;?N}(@`kktqKgy*n!tm% zt~efi7Y)4OS~sS{Lsvi5>ZCk>9Ua{IIr_g?GV)NecRo&iV!#*_*n~xOjd-LH3|zEA zsTU<}pu)J_TD6cKoklw0f>vM4`?FDBmJhcnDIWv_pR0BZY!B`=U1QpvD_xAC=1PHe z=)u)ONA;WG@@2T}MT!Typkh4<2PJ(Sc_&ae5Jh1JR!O zA@5d_aS;XQuXS8{1VfPNGLS>Dz36T_R82sn+sja~G&mX4@IZ=I)1=4E;E^zt?M;Bhf{ehB7Y{$yuN{tAmj^PROCcX@T*HO6Pr!{M9YMrnZJEFO?%JV1_cy5=~8fz%Y)OQsUAnQ+9Mt@mq8TeE|-mh zCsJmrKX${Du(ZoGN5vgrz^b1e6%XfHJ{7%|bRg>Me@3edL3X+f9<6{u9mRkO4ACM- zQ>L1Y9+Vx_e=HQ&(ZD0YhV^BG>04-E+ze+s9fkZ7m%-Q2P_HG}bmnN>mfL2g+Qz?HNmgHTwJ76;7D>RtzYVZsy zOy~d$Wei)P;!}l=i0G+hsf{q9)k^8Z_@kAv;>m*{Y71N(n}QFSH^==T|3kd+Cm zt~!JVw zY__HqEW7z8=BXI;AS|44)fwX$Jg>~cLUWIuJ_cT>YpBnp!9R!aQ;VUdhzI$ZcCTwU zod*M#p2yUd`nIBcc@pM*3(4ST+EQ1K-$R2LMNqLckO_+y&#^x_GW`iEh~G9V<^^5n zsfp85`^}i~!qkZ~x1DYJLzp>7R=iAMj&P+gUsx3>S_QrV7)9>B2d}MZz56N@2dRShz{JMR-V9Y0;UZy{aHFt9xR>O#E|ZK3VWqHIcvBcqXfsS0Eo?1J6ebD#3r7ma2vdbq zK-21xWMl~E3p0gT!Z(B~g~h^+!Y#rQ;cnqx;UQs}u(Hs|9n!hM)G*nDB8AbyIALpH zf-q5-B1{uz3bTY8g{8vs+|!*KnztmSWZ4cDMhROB6NHJv9>PJw6k)1xiZD%>A)F)3 zv6-9OCEh$Qc~!z{;Z@-^;Z5N!p;~7%(r2i99@Z*~#4;337Qka9Ho@j3H(L_tmIQJW zG)$I4^@)sBqEjUH`(9)Vt&+$~&<=?eFq!P7)gTf#^Axf*W-E!q>_`%O#uyU!iE)-e zTBVY=;S{nvoI>JSkWO~OWh#S_HSi7@tkrxH$M{S#1+#}7%8L;=8rmacwYB?eFo)?W z&>|V2)!XDCt@6qL#Nd+mYPFF}&}tL;2{cNYN!mK<=_jx6#6{t%-tKwc#7Eu{rElaMy`R*VT|0U26k za}W#m)2c_2&5=xB$802VYRe+GK*i+S_N7{X2Lnl5&UzHutYZ2AG{FY5&<@!e&&kdh z;sR`@8fT3D%owIsGKqWsAo6pJF^QwxaPkbsnCz+581hGqG1(4dOyYJug?v<7muUTs zeI(Uy;Ce!0TiPV#$x&n9++JWJvJ^dG#%c6`+>CXi$mV&bZ{dX^o41%=3s3zUx6)(KEQs8uxiFBn9&*J>}s7E~AKV-nIhMB+4OmNA0! zMmdS2*D>-C#+1Y^ev-uQeTu|Uu9Czt;yj7-O%;iSpql&z>jwFdR@caNST{)Q`nO1a zQGXl6i7bHJh4~-M2=5~#&Y)rBlUhZRIABGQxLHM$IN!vPd$6#Od$F)s&mk_-hlPba zg~gJ@Q1u|&V!Dzz%OsIMVO=4YVAo4#1P7QwWLK?H$Oc$g$onufuEJ1~jj*nejWK)3CRkTUXl)T`Mq^=NBnAr$`8vj)yax4>vG5of z2N9B(_r+v0Y%1jaP&J98+ZM74n;v->>L!mtJLCrtHHnj3DcKSl0L`Ei*aex<3K}5a zhX%-wT2+ux%Sm!MG(h%+2FM4X0rDU;VD${DCfh;-WCHdM61Vc3WP50U%!dY6gB_rO z)tLW5cQ6f@f$MfCiHl7b*$LB%#0@BltOpH{INZjOBeZHxc7X=Sze59LS7?Cj1`Uu` zpaJqS_7<`SG(g5--C2$KAM_wJz>J5W0kS6+9`bQ4JmfZLfW#$o47mduAXBjLkiD?* zkU0LQky@*C@~_YU*;1=HWC=7t_J#(?hoJ$J5!@NG$Ruchd;}UG`$7ZchtL2y0GkTg z4;mo*LjzrK#qe3NZicQ$mg&Q zkQ1N*(trjm1983}bD;s!#HO-{kyNY$mIttVkrSZ-auPH^Hp9V!oQ!pVoC*z)&qD(w z_W4a@4KzSTYE?p}K?5W}3s0C^M|Am>2?%gY+{g!!na}{a02&~ZaS|doLIdP$&;a=kG(awd2FMC%fLsI(Z2P3o zf%b`6{0roerBw?n>rGm^Fb%1tRR^j95TAm0_VQHb9No=7Mpo57QByN%;hwDAt<%2g z!x#0C<^7vSqb$E?OhUY=)PZQ||69fF3cHGhN2c#OGF?xY)GZP_aMiOJcWSa1TG8jy z5nayc^1Q2eYHF5Vt%`M?R?M`czHwjcoDNpjk(ch&bgH==yYydD<^*b3dSv0v)LC^T zXCsPa?pfiBJ)y_Ot-!e?C41q6muqTLs?JThQ!{dO_CjV>Ek?1WH+@5o>xf+?C-ksH zy=7OeI>w}0;PZ8jhXTNN>Kk9w*JZmhS{N1S122bL|Nl(=E;Q=ftOs7dQ!|5KC-|4= zmDof12jc)7NBAe(A$ZOc2Yte?TqV9YR~Zd!XLRSc3Z7s-T4kIKx%&l3sa@-R#@1S0 z4`UTOG1$(UJH~#sVY|D9?B8Qu4OJ;+-hIwc-}n}+HDYVUBpSZ2RvGPl$JQFr=Ewnt z>U*!Y3Y|+bR6F@!b9ed}>LG2%4-7HX%sv8Xozh{oo1;6-L^Pt$M}4O(#3wXjp6iqn6bTn&1?s8jSbvX}jfy zdcC!_3bgncM_GFM;t>BrMKcX`H^=7-FEAc%a7&9WM6 zWKNvz>aEMYu;!1ryPXy3PJCK>CmxgN#Isyw_PNR|oZ!TF*=6kiaOrlryXS8pf66MY zyuWEMI&Qh0&rZ+Fwc|d-pZD4E&(LtZ? z5r1i=9e*A1leu=>{bM!m9`QF02Iw``Fg0$8LruGU`>jc@8rUc7cs<0+i|jb`Weq9+ zpoW`nry`?C?5=eGI{8c9s}=v>3p{I;_hl9t0d3v>=P%L~UopdP%&fPjg(&|432EfEqC`XHnrOhlNAumoW>!ghqizVC~TvpU^(V4V?Lo2v{%j_)FqTznXY z_`=s4v4Q71aDnN%-nc)I>rIC5Sw^q+;RR_iqg*{IeIGEI@PMHbd|xwa{l8@2ZA9LhaQ=RWV^=86!joZ`#tPt+tA` zm@u(6mI}4h5=+&uwUwz*vD8+{{O{+TGnvuryS})N`+d%Sp8dQt$+6943pSU{j0nn0 z6{4jOB7H@4?dk;uQUq7^5do+Wp+ZQ&sN>RAR*ZgI_DJ7yY>i)yvSX-sR*o$ z5`j`xYWHT!O4Y05xduuU%1bD9QR<^KKxt&#;eXTLx~`lf?5$`~`hyikfpu-jR1(&5 zhECC&{?oSeKlBXiWJ67gux1$EkdJFve>Zd_t2HB}rnP-&v#{W(7dxj~JA~D=t_cmL z)r`LWpAkW|UZg*; zb|^nGY*XzQYZqI;E8mGyt#``Tq}tYU6(etVaap|cP zzM#W|LG%n0;>l1FD|}q-gFu@{kmw>^^bY3pJt3y6@l~UQxYJjPp^83)EvyEY)5%4z zi55n2bGQ`AL9U9gDhZKzhD3EWAkJS1`*R^ir~%(c3Q_$PDFXdfJDBjiijRIY-rze` zh3Fq6#Xa};Vdm-3nbwN_5*;JFIP?Irdc6jT-m1LOT=j-T#E2l}w>zr?!*$LeYCFz!NPek)`JA z2@&*wXN%ws8d(O|>JzUMhCvn)L-NEkLQsnrv}`@Lz|W)j;I0Uz>!sLNK94j zM_>gdlSx-1rU!!qo4q*D20Af4j6{y2=S0Em21?Oa(N@gg916A@>+2QS*uYI}V4Sk+ zPa*us7E*kzSoS++UIfQsP!rt1f}cDUB2I0vHtakdb{?YI1JM54V>nkuTVNI4ek1Y3 z&qX&xebG!D3hV0?Kcd5UFSFQ$j!|ApG#)2DI*PokFkVFsV32$NL zXoF|N&9Kp;PlV{8+Ao3wyPA`jZB!?y2N^$}BumZ81|7IEQHs~yGKWmZA>OrA6CA_| z`+)<#s=Y0Cl5Ul{nTFxq?D5*q5MqPsKN}m2d7ng*;&54r$Otnwx_5}fi#70@Zr7NG z6MsLNL|H`#f;GOqNu;U?J7R^w@LIFoRspTP;N_?~L%o-J`GEsCahX^WTU7s+u=kuH z(kLpb1wMw1Uzy@@tqXvEz%%+O8na*o>A>_$=y$s=x*kLr1rEB~O%RDOz7dH(RmB7-MOt}} zYmLB((!5Sw4lFCEg7?&_psr0*swdn7z5tdnBs9v#n}0HuLI1* z{6B?w)|*)w_W#OnE?3AE@HxVH9x*!DMK{9+7W$ERq}qQ2eX*QJ3Bxh4lh*+@V*~xL zfjmVMlxrzOQdiMo7&!G~cv_V&)G#7rIfxW&sp^n~3725P28up|jl5Ki#B?R|AFx4! zmakClKV!l2@QkT$nL`J@93;hfMK^+uEcP-qHnU&fp&A`95%Sg$K&XRW4=k%q_{3r{9gg#1$xQw8#tPG z?H(-;#!9!nSXvJptG|m%6BMM6A_W@UUeQOv$t4KCZZkGRc2E4I7^67c0uwED6&(v< z_vk0Z&x(G6`A%ZKvhMhA#DKQAI^Iwns$$3KUS{Kq9Psz!B<8C2eW2GP>3m(;aesKa z&*~t&stt1x*?7^DQT+s&|6Y;wY?$c}A(G>`XS6V?3al>*XL_Pt9L#c+m#e)DtuDe% z$1Q>*m|zNI+R@Eo2)89}QVEJ)0c|~o;B-{cop9pwUcs#k9-d%>Mz>Pj#ECvah1*Vf zN2$1Mk5DPoFQ9#EdXz8&RuBd&$W(Mg9)AM&21V~g|Aa^>9EvvJ0L|Q4FF3jdK6-W{ z8B3$xGv-xm604LFm4z8Lg4fty1H zaO5F47^pbd0P`)XWb{n90y2t((YhT)KD2&7V<~zl`W%#OfR`WGfPsy^BJohgifp*@ z%U)K(7mRm5M!Zn{b1{Ec=)fn6KFgO^Q5AxgtegZ3uK3>r)60+{?l|(Mb zgp0wUo~nH*PI%qxggwwd+pGVdkon;#S(?&~giCDIRhBxoW1x@V9xzaYM>{l7P`fTDXqX06+i7@}NlD%wBogS_7z|GD36D4tu!*wFA}B<8F3r{KV+wOnbr z&Jl1Rp)}YTL&P>bEIlJi^Z2e9FfUs2?Nq1D;J_!y&7;%?-b4LGuZzhB@Ot53S(>nP zfHKW&BVnp8n(ty|mI)E--T-iOhH&W|$Nx9si>v(RiOoB7WxEzElC94m6TV(SnG28os0#TaAZ$yl00uTd?4dhHAuXqSUeRQo;ul+<$ecjwijXuchO1UP{saIPwkja z=XXZsb*pj3|0Z}^ifGkYO)voJItmFxmZHmm*Uh}Nb~QFXvq+S3C=R0e)awOAPaJ3y zIMzqen{d)`$a?b>$0|VE->$?PQ1KsYi2_``+#`+Iq=D>$kV9I2w{M_}n8ukf6Vh9ebZ>5I)C;7AqdP(Sy9 z(EmUs#DDk2qanv{Oz3{g^#wSP<@E++4tSq~VCA-gR=~!Xy`iFysS~*m^Z_Q0LTpJ^ z?M*?Oybe^B&1Jt)>K`{S3wwffxl>(c#&kcZe|QNpUANYv-`97AIHe}oiUrq{E*K;( z!^Qa_d+DxZUJPxl`VPXg8s8N3M`KA82e|0ku%b)GC=xF#nKp*7LJ{54)B^Y67iN1U zp-*7P4dH0qFCN2LiQtznyJd=bcHI-DIpAQhJRJvezj}?t212lbcNP5#IBtxEOlzr% zNnpv9SScPT`g;g_zt=03#Tbx+{{0o515eqZmPbT;*-X83=meB9C)e|NLLP9IMTlpL zPO1p~dtBZ(%8#Tv|^!0RQ{2yozi z#EO?x{|7i=QfJT2XiypG|IqTD%i~s@uf-$*1v7Ih`AlZ1+d~ZueV@dLP`F1y(-n| z7GQbX22z|?^b`2k!&IAkTN_3&UWBeZAiEvGN{AcBc_y265ZI9#dlC(tQV(RaJC%i0se_&nuhfuSS~uVH)mMq9sEHyw4| z0df@{RCrS1C4~-!4;AtU35>zkIf-vnX|Jfx3VSO|u>P6&P0)HpZL+Q!STiV3Q3tJi zKwVJOCF`G{iWK$GT5eFypupqqHChd-*(FL*F$x+J-3pH>JbA{tdQcN% zPJ!yCkV88`ak3d#L$ufeWh4G5ysR+vxC`qke8TmU;iZ{AMWQ`pe-Z-}c4kD{H&|ge zMgtUaI6uGwo&f!EjepL_$;SyGq~pst74Dp|1B`(Y`WDIvk6e)vJC9%-Mk12&XLxEx zh(CrAmR^rB2Yh0LJ~d;k2t{nk4@eN(GQ!r|Ga?i3%!qWp8{=dIFGg5GZ$`wQ1ja0! zkP!+tm~jI8G~gT(qZo0^N@B$AX*^>TB0D2=a2lf#7Lmda6A^J4KZivz!kwlu!d<2_ z{!fU-jP-G4U_@4($q0A5k`d`y7NZ}DHH_yVLPlJ_)-mou63sXqddG-_bTiQC-;YEN zSA0(*m+@OfUB<2?@)-9+H5q-SILuf_ierq6p+bzeNfa>lC2>JNIh2?2Idp|FjKphHbywNmW&7$ZGS-`5`avqJy+a;mNKS6=8T1q zIU~P~VH^dSGu{$n0OJ72oDm*&IHN&|QH+mCBrzg47|&QjViMy#xPQjqNu)6T1(6&1 zVH1hjjFqKG(@!8pI^zP!oUyJHOBsJgNN0r8T&Yh4nKLed%o!1yvl%~x%o%UP3ozn_ zw~28VWX@=X$Qj}7jk)}g2$nMUT84-7a8Iewf zGHS4U#7_zBFO z(Rh@^On#US9biNblE#Q2mdMlgm>7`?1~blr4lv?ASdq~T9bg=Z{E`vLN0i

  • 3lvRF4tYuSSeZ;QJYG!VjEc z`@f77kSm@*2N5ON-@3(Kfs7oy*J}-5($j_X&mE1{-O+U8gzg$8alv;3sMqe zWB38a@z4RrCh!A{Uqc6s{LmDRfbnhU0Ao1(03%ZIbjBDd7Bj-9FJ=4-I>3nRd?n-O zB(fNPg&$yi2pwQ-4jo`b!nvLine!&b83^l)R@i?IKV(7&7%RZ{Gqw^UkMSmSfUz}n zfbj$903)sqCmE3k7BCKk4loXaA7K0pI>3m``a0uw_yN5i`~c%9_3mV?N=78fS&X;>u3_AVSipFg#5%?=paYDDpaYD!w`@Mm_Fr9!9In8XIhV0D zbbt|;kUYi>&;iC`=m6sZ=m6so_yNW`@B@ss5&s#R!w)bfK?fLrLM&h$4L`tm1UkTo zi&fESw*N9xJmiYOi2sc1;0GArgbpBA4Zsb`mr;@kWPA%cz!-;ofblix0AqLP0OP;# z1B_eY2N>5t2N-d!tH(GKv49ab<7Q{r{&B-<$rZms2N;JS2V}%muQOv$=m29c=m6sx z=m6tf_yNXS@B@svmkeg?jeLMH68QjQO(~KXpTG|=md6c@F&;XgPtXUBfDu>mnT%_Z z12SHN4lu5V4lpK@Sgdb=-`w-Y;0GArfFEG|2Kj((@)%n2^iO+G3}3-htn(ug>m*LFuy_(skSB*?$m-%(>wa*Ae&4 z_YK=0wMe&JN2+Z}i3#RM>z=uF(dEy%jb(6xt)lU^lr`dQa=w#f^uJ<+Z`y%v@KnrlyU)t;py3% zQg_>h0+XZz*5T)S|9{RhjqX~TU0Bk8eNc(he6jw1=T$;_^&YIC+CMJj68y;X%w_o9 z7wP|&FHxr1%KaJ`EQ4;@D*t)cS4RA43%qs1mzr7c{@qlH%hss7+o^~3{M{4uzV+*( z6zTiBHS*pobl5uR-eekT{pnsbwYA>7*E_rr7g)!-xlZS>0|WazRxe_yowxS5UyE|A z6YqDScdXyv??#QR5AJuYeh0~}**C^~Irg+;_x%oVS*L@_E0Bh{zf9=H)?s9831G;tbJi+V10;nR-okubO1Nrj=gP ziEChCec7lS7t?sXYUiwePy4g_KAleeZO5K=CRx6~7V_^^q9(R`&qorSu=OpeNA#6- zmh)TscU26HrjJ%Fq)(_=t3^~O!;aexl5Uf%eN-#

    xzrEAXYOG+wj&(F01cZ}g{o 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 delta 19531 zcwT*c33!ax`}TQGRuU!=A@(3e?9^7&o(fHfCB&{p>`OJ2mQHkRV}$77&94oOHZ9t; zO${cN5~X4RO9>_Ozn^!`WTySD>q~pw?{oI^?B|_HF60KC$_+}7sBmqb z5bcBzi`La|Sm)FQDI#n7hyYZG5FsQW>9ll}b+1g7aqGW2mFZVE7!8$B4BP=f;lK!# z8Ys1-Mhj)NI(6|}52ZdzBa|j6O;MVmw6N{*zvb`Swf>M;YgQ!(&9c@Asb}3*c{~MM zD;T=h&#N!Wf3OX4^gr}F)~SYi6lFCV21=iL)+>f?p&$IGOR+UNq>+LG_sFk%s*z?BL;EoL~RUm?<6@@qxLgI*`m(&uX zPgDY~$#5E*+&)Km2Hm5f5PZ%AT`TEHJCJ7OadtvYN+&t^$b zQAKCt#9Jnj2v+octo$I6L|0!IJpuKGMM5-ma}?t*fIYnw-Mf+y7o$krR_krR`ob6g zY*rooak43}2|xWrmBri$A#ObMh~Pam1bVgS1qpGj8VMgY{)6g5B%G3pBNatwaLmy` zid@xx7$RNi)oyfPCpkX|(LiAX zt=f;n3hK@xU5S`Z0te1|aiAk~;@waZI~8q?gxL*~VvwS(n13)7Y(Li5E3&YGfI}oE zE4$td;dgyricb{Fe#OjN;W!Lxf}2=y-(#>lFvlVZ4`FG!YG$a$wOSNAC2YzZxVv$jupdDm8hd8|055MVl zjj1^CnO8^zDLN3WiHajJPfgejD=dK5TI9A0Xmzodqv`?mUh3rs4&%g4+mQH5_3r_D zzc4}?MOC%Hdyw(SSsvHA4Cs7Y=qzR$vxvx@#Gup9p<^(#zPq9`LDz)Yby9Rsa5QwL zhoe7Yq8?r%YmfdfM;JYhXE2oQlN}_gD|$Fs(I!!f$!f>DFf!6>f&wUMY!4~As{YYn z?PZ9diW0#S*jIXpM+a&`1Xo@s(M8b>YP0Kq0)9riSXK>>;g>{thXJ7T)=1IHJt0_S zNAzl~Hgp~=eyf5MHIn;;V7%;qG1R~6Hs z6j@a~t~CNDTHtl!N?_T8Y92HD3@5q=4h}K6=nD|`d^StfZo>j6T9O#AbY?E*s|eMc zsoF0E!v5NNnTZd~W-RRZB}E59>^8W;Fh$=%$7*pNrF;V$K7tLq6O0MqeK#-1^b9*6 z?{$E;G5_zCJ?kx~4*MVZlgkxy#q*p(UPhJ@?4ny^1E2Vjc&OTc0{x_tM+w6*aGcix za=dqEPS|sKw znSaUo?JlHXs{I5OYzxmgPtn7m1BZu8F-6hMp(CkYX1Er*(&WA<59h{3;N>~51mZdt zwAUuFLoL`8=1_Wt$}^y1u>54Whc-Z_bG%rbgqd@Z@woGe(U@oGUVe7b|L{)!fnvMn zH;Uabqn}4gF;6Y{KCl|X>(}l9Sm1r=K!l=ShX@7-kr=A_zlIHmO(fAswac;DXn8QN^u)u`Cg51VeN>*HAbk|;p}}1heG;7f6yeux#%9Pa!e5FBio?%i zq8wMg;EMkmJj&)ia74;cbOOBsDcN_5-iv{KF`+v}%Y_|R^)kD2;6NjY$Za)OaKgYy zDXuB{MF@KeE+QusU5fciFkg^6{u?nMsg4vkRfn3`@ggs?@kI_;cACW7s{Ih?V@Nvt zDLWnlPj|2p!mHXa2a%IkJQ>xuka-!hz+!s=)dpXrU+C#lS3gdAZta z&}v^edbbFUV}do1X*bor0m2OeAA@w0i?;+-^{&|>x0(9VgMgNA0Y8&AyC##CBSUGE!6e|_|CFmxzr3hE_ zGRXW5gwIWi?g$nR-t9T@i{RK_DJ147dMq~hWp@%M6$kfYypuflfN#MHV?!@9stsB9 z@k%1sV#00UP=D3F8Ye9EI$D; zU2r6?FO_pN!~pxd)z@>`{17Wu1&iE{VmU-`6-lI9t4D)n-&FQ^#uM1_P_NtYQOvxd zfOLn&^i^zdbGXMU#(~wwSWlAM#fSm%2tKc>itb=xVHGI?l#H&kqkx@%q1sb0fhE?H zuslY;Gw{ESRR0WcEbg%=56^`V*(VKTdGt&KYj%2x%s2sdTjx7ZN>v{Vo<)a1)!}cp zVz{FDF4lAnyrp{sz_V$>rE?tr$G{iA@RKJ#zYnEr3O_Jk(bM2~N~cQE zN6{rPqf%TB!j+Om!``;qJW9;={_zD-p2iW@vgcgo>MG-3mcw3)05?X4ooUu0YnCuQ(P4Z8ulr4XF5!wZwyqqFe-bLAL};-4h&x5-#oQF}n}>#?z0= z-)MA(2uAJn#FCGoq~U`|tWY{L46@meSkhdzCqpfcRv@w3eg9tr76#Aqh~N%RFv~00 zT!NW~UM8_kX?at=*?4he4>pi(_uLKVz&gP71(VrH6RWre%;G+{f47{0FKm9^h2=prdN1QM#JqeS^i=(794p2IyBgQ zAoRap4e{T7@o2{J8wh7Ut}kD( zg1813_Z+g9zDnlLppBhhLwHu>TY=s)iNv!27u^t6^wbzh;sqts77$izM7LD6z&-ed z6z?Q7Qizw~XxuLz!&!;om#-=M3g-Fgt|-p|lfd#+9LW9ZwKg`;5*v73(VaOM4Fby> zsEQe23AL5tzFPzkcHu71E0vWPupa$~D0(M6<(LK@5glMN_0pj;P|6E=p3f8Vf$v%1 zJrzB%D)evmZjY9xVn8Zr_f4iBWWL(q39o1pj`NWs;Jv&s2R}?)J{hz);B38}co%QbrT*Tat;WAi}?DZDxBPdDbmQ)^$ zo(Id5no4m=(WUU^OOZpmt)Ln>SlQ;ep0l<$Sqt|ZSxz1|1-W8#L@JZ82W4xr6WPyZ26(!+sB!PJR=frtt_ zNVnM=MGvrS(NvFX+=!94z#sRCHe;oj;j;YdbrkJmUZ(PVVKU4x-s?RdEAJhI*B2G- zhxXMoJW84fx>b39-2ZV^7o!lLPpb}m3Ecs$Z>{J}phI9*?j-dXM&|XD<(JV@|8hJP zL>lJHguLEV?SmnbiMu@+7A{SqDs-v|X#M?vO&I7RT%FuI)_@-`^yF}Bpyf}zUeE8x z26B~_*XNJr5Kdo$61P+BYay}+l|A=@iQx6`@O-@${SF!iC>_)9{}&*$w7#AJk1=6U zxX12SKt~?5_1uIe!849^B4jH%3_I~b_}#APLYVDbudFx*E6s@TBsdSD6G4@AKjMo2 zai~a#l02_Elwg5HHjfT$!U_7^_ncrCtmJdAkKuNLL$i=}yAzO7ur76k=Y2pH@ch@F z54nDZ2#zB|y6%qu=V4aG(H<-40lSUp?fKkq4TN{W>n)jt5}pRfYAU)fM0oRz=M~OV z*m>q=61nPidm2`bo9@|A1~?SK9CF|PcSDJKz*oE9X0PHGkHH?#wGuwH)azz56h}{s z@aRM)WbSY9gkN}NkpL(0ouY?fL*wR=uFOog#0F-ee;v1s$}mBK*In=|R_bJ{)TW?r z(2z;9Cib2^d-~K#uiMTKe8F!}_DR?MAXnjjg~t?LPU9kZr^`dLxeth+!xP*kb)7f`{c)mm1+;q`h& zDJoWB)_FCn!kr3_C_JVxImRaCFTX z5jI*gBFSpUcn3=Q9g>!SRLGnwiXd}Fgn&Mb;~{g#Kj82fheGCz@U}x4L!?Mzd_-b2 zBl3pvjAbMyGAcCQ>YAJR!tNMmW&b z`b3a9<0{CU5n(%n@m8jAKbW zU<^ahD&>bL5>FZVZPr;JVvsK*QmsHn4R+7i2|B=t`({-}0lQ~Jj#8Tu8C@jfL+AkG zdguTnvbg4q$Ov0Aegz$1TnNw9i65XvT^YYX>|(r$+ZiJ+AhC={_2L*E@Mw(pNDO6+ zgWWSOfZa2WBQajz2y}q49_*g+eb_zYNfL7y=RyY3lra~mU4kQ~M+=l~<4=}w?AU=Qq` zD<(h(7(a*aXZ#F0z_^;kF~(fjJtM;SS;h}YTwuh#^|HPZA%13z$1RQ#_mCTmNMsz0 z?;vJe5pC2Y8$6@>!et?m`@AEwn7ZqQ||3L>B_d*94 zMUhe}f-j911_c*bzFwh+AlwiTKa>5&Qt-YWM+tBKQHlBVqv~ZuF}ekuaw-;(EBA@epDG<1rGMj2}V= z7>_~+7?GiGW2`Gh4kK>Ux!<$>cR>8-3S3C?7(ay$Fg}A0Fdl{uFphv9U~B|Gz}OJ+ zpRq0c0OLgH0OPla1&pu24=^5w4lv@9o7dpWB5Bvb*4)_7aOy~e3u6U7*3lIw!acgeEh|5-U#vh>r z=h^;8AP3}%N6-Pr{?Gx&m!SiU=b;0PZ^I8T{sBM0h-+U0V;u4U#yZFc7$c<^&4_E{ zc*Za(CNjoD2N(yy4>01EK1W|*6LLVt>(BwlZO{S6WD=?R2A~7_#^47S2f`09Zbd#| zi=SW%r;AovxRzeBty|cNsG9ZAo5SlCBbV;A&G%`3Tx0GN#p0o$%KBrdJ0`VKHSR>sgkc;^){_=5(f+xbLXLiNl8tF%?&JYSh(E~3PPV?bw>k~5nfE%023XDe&2+>X_H}*No?eP9c*(V=x7D7kA6%+t zedX&h6k$F1^%B}>?Rj9MF{A{2e~musyqPv%q!^^Qi!j$7B|BJ(PAD5;7iATt7>V+A z1u04crT7eGFiLNfiO5ij{G}*Fc?~59rJ0`;U64GsmHZ7!DJq~mL-x4^oCEJ*TZ&W2|{o#Be)wAVYFiCpf+VxW0|K}`osK6R>dDW1!70R6EE79LL z3xE8Z#6TFq{Rb}Oa^r8$GnaOM{hR)8c?%`hcIR?nu>9?|?a__Dd}YZEo8$IPUkbE- z_h&14`RcoW?WRbp{jW1L$hy2FMgIJY^=V0G%CdI6JCoX4KfYU^LaYUMRjk7Jdzu$*Gw6=dVo_bn0J{l=+UbNnOv}JH_#N)IjOY)&Tj#Y

    WEDAo<66 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 J+htkp{{U77y&M1l diff --git a/bios/com32/lib/libcom32.elf b/bios/com32/lib/libcom32.elf index 11655118f167c565ba2f0d39bdb557b9792c583a..6610a690856007f93b689774cb2e50c1a4e53ece 100755 GIT binary patch delta 207335 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 H2?Zyw_l&ZEp3KHY>8Zocf(-1p;uiQG5G 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%0Dm$fVuT*C5wH@d(*! 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 LvHWCvI2OGJ(a=xu diff --git a/bios/com32/libutil/libutil_lnx.a b/bios/com32/libutil/libutil_lnx.a index a38c2980a0cc84cbb1f2eb623913ddf51fbb3d7a..743f5e4c1c1d7b07c7a4494527c05e346875c903 100644 GIT binary patch delta 199 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 M_5U5<|M`3KUnl>!bpQYW delta 6772 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 diff --git a/bios/com32/mboot/mboot.c32 b/bios/com32/mboot/mboot.c32 index ac5aa27ff969f317efae2438c61b2201bc4b77e4..bf9af71e4617a2a9a98b9f25ff51ab1589f367e1 100755 GIT binary patch delta 1109 zcwSwUPe@cz6vn?9XWq={SgBJ@rfEKB=1mQyH47I-fXGC60{w?QyG28mcGS3b-XV`?$&C$f$dNrjw->-~>Px$T$$+bW<9w73I=%IiC)+uHHM`UF)Vjb@wvQk-b3(zC76OM=u&?_RAUu*yd#75wh7-RnoYrqy65qAQkB75(w7zfUY-M|HrmAxc30~2Bga80yXad9`0 z6I+0rVk7JMA&3kpM=HT*w_~%+tih#{X5<_mUZYA2!X&yQY*}^u027Qf(2rm-L$F z)O4t1&U{U^1v4SJ`IEAPa+)&<#}3ZZ$-EhKY)emUxz=2FI)YhVEo@2n2+RK}aeRv#V>Q4l_xu{!5_Jm6 zSJ6zuxm5+qF~jo(<}Y>Q76bi^qr{2xAz7@)cfRnPoNnNa-3x5$nftltbNtWTZ)buQ z_xv>ZUXr-}IJr()?z`vjdL3yTwSwrO|CZ+&Mib9J@TUJgFejOq;FNpg0@<+#SaTH^ zqCds>fE&N@UxBOgi`RV_Zzw%9KG-!eF*-6dW!A0!>;{inO!Gwy17F2*U{mCqeu`BT zTjU)}p^&?yFi(;|zW z5!--nv5W&Jvip4^yO-YR=XbEjT{Y;$C1z z7nl<{h4$N=6P`GB+THMd$v z%l=LPV7&2p>jyJgAu}KUKkMMCC+-R#fsWf?Qe@b-`0JmyL>wPD`av7jz0%bRz0l?f-q{sO&%sZYj& a`qPjto1SFMvuehYiP{hJC$aPKxcmctB9lP? diff --git a/bios/com32/modules/gpxecmd.c32 b/bios/com32/modules/gpxecmd.c32 dissimilarity index 96% index 522b55aa8124e49469b4df2329f7eb5efc2175d4..2c94c48a157bb0d84eb95da132f1fa80d2379980 100755 GIT binary patch delta 530 zcwU>pdxU3#gl7R01A_?z149Z60~nYvC@?THXfW_Fa5FG6pn?a?5X=tZ2rw`JwK6y` zL-E8!YaNgVRv;>4lI;3fH4`r+_$NROfSAX@ z5QN5eL*rYZ@j>>1JTMVR3o)=w?q}4Qe4Noy>kP<|K*4ImZ)VnHAl z2jVA;lQ%N!D-$NhRJV% zJdph$oHJRJRi5n$BiLjsRwY&epmu@DiLA=3Aa55;?gX+}fmX3j-UwuY<6-hmAPeNc g1Ctrqr1?NWWB_%@1Lny=Y-$obzz_&WI1e7p0OYYqGynhq delta 579 zcwSwR&q@MO6vof|xjOy}OG%?ZEes){DWr&UQxVlNAqb)@GKeAyMlBWmmw_GoaML^BsJ;gY!II;F4kxbUafs_^OPjEHWwSa*`t%T42*ux5$zDiyR5d z93`t=6x50`I!0OR`=@*i&K`%P!PiZ2cBvA&+p_`KMi#$3y+)Xn1H?3pYqQZme|!pb zvqq>8_OYfNVNj%SLPV4_E{T4l>1y9%jTld3RI#Lo@LG6&r-&S;hhXciZqwsFX?*ak4@l~4B?#a K7dEj~_VEi5jZz{2 delta 594 zcwSvnO-lk%6usljo6^KA0+j-l7P$%q4ar&+k+gIjX(*Uc7KQ}1aADb^MRFr(*D7jf z1g&f5(tbccAllZVMIYzt43w8S+;iv6JMY~4=En2xIrFDm4x%^_O(^O{oI<2igoepO z8vT#DL39EPNZ}>IR%+`Onz>X!UYJ0Q$R9PlG5OF1xSMxAV?LZ&Znk&U4y;{05hrc+ z)w#Yp(^rctas7Zi3NN#kGdvU~H#fADD^u9cFORKWacSU~Dea<9QM^HuhOJ51t zwk4`qIR-9(Yt9*``g*0pZ$_L$YD}BsgbF%4mVSpxe6I~)T-XXj@xDJ<4kTzZ4o*YJ5H12oP?Sj9N_)&q8ARod+$5%VWT+MobqzP)9s8wRlw+O5eW0okT6Wee?LJc_{{)1*~BR=vqZ)0K7omGubO%hC}tKpbbd{C$|r)C13%5F#d0_g#v1 z|DvAZHujktrLqGhE&m{6tno`pAHS706V)E?h$y2xtEAt!k{9_(7idymqgiDG(4ve3 zZOTTPR~lrI(FxHA2cMp|fMQmjFxmJU)CS}YPjhDt58RH3ygrc|5K)JZXM zauTbjli()q;>YBW$xcEFodh%2K`2NE9n}A6o`bn?_?>g#edqkox%XYJ*0-LzR5yVk zaCz8YLrB9wKSLKG{J)AWP@)|O&UX+cC$ML8mye%5$ek3eo0j{u`>p5k*?iyR+P&uP zT>i^e^VL%I#e?&iiNc%4c&K_R)cUoR%|^N{PPWB2$yt^UlRjdIw0*xu7A)XC55y_* zdmvfQXV3*y)>fD2@2)84ORMs|3VNo||; zQcCvSqcniDk_B?g2+*(Od`>8tXh3OmtjbQ{j4}$GQ^tT1C8doi9pq6^hjvxT8ILP{ z;JPvnOeqt+u z$V=x+=f5EW^2@nszh6$7pBuL-71?qJCF~_bBXY#+wYP)(bs1%(71f4i(d#uE zh9-UDWlb%yBk$?eIG>t)rKgXrE~cL~H`)89oTRt^cx2MgMs((&KL4m~={3-%+4GN?>-@eVnRwzaHL`E| diff --git a/bios/com32/modules/prdhcp.c32 b/bios/com32/modules/prdhcp.c32 dissimilarity index 67% index 98c0a219d9d71da74dc6142d2905b59a5b2f6b92..da0ad765caeb0d4b3f2afdd3e2e6a22acd0a14a5 100755 GIT binary patch delta 612 zcwSwSKS)AR6vmJ5^~`(IP$4pcGz)5I2ytl_`Xdz7P*UKaoR+rQ z8WMsU3R+s)+N7z$wWTFmB&zQ`UqxOx{LXpz-S3|7ym#7D3zb7De;ZMphz2#;D^3wI zX_z|6M=tum%BmUdQuv7s;M(IvWj^gXt6Yp!o=dyuc+i2(0C{K{EVzlb!61&lI)|DX zis~(Ot)+fwskgv4=uJ3!32?mtc)9eG^XY<=-&;wSs`SW#1GCa z3t?zgXcDapp;8bcc7(WQPYCb(!T`~s5CbV)ZI}zzSQVGa*lrQ;pI`Z7(2~|6joWOu zGU*02Cj=#on<&cx)vdjz%#7&6;FwAWe{9Rz#8%PdqKfjRI^u+mab9=1Ciy^zRozjJ za8-x3{ap;XgP(Mt`@^sW8#-!B18ndiMjp*!p?{`LC%<9q|uI8s;u delta 710 zcwSvnF-u!v6g|)9OW*rms5P-_sbG^}>kuS^4nnDegQ-vmh(kA1%}`5{Ar=c2bX169 zxDE~$96EG}ptM8#0}7psh=W51M>{yU6skS<#INb)#r_F zxF`^JW59c2g8hHO&elU7F52o}ZS~K#dYPD{jC}asGvby57^_tu0O>$3-64f|U`4G? zg$*guQ+obwxVfRMdiZ!Q0~W{IA^@QC`Tsw4?f&tX8-^I diff --git a/bios/com32/modules/pxechn.c32 b/bios/com32/modules/pxechn.c32 index b45b40806ae6c52bf4db3ee4ccc71973cd192918..969c99e826edd588916e565429b1981f3577c097 100755 GIT binary patch delta 1570 zcwSwUZ)nX?7{|YNclU1hy4c-@%P@1X`E%WSMYg6P8&-(?n_3yOS|T?igszaTNam0~ ziRDiTFX*DHCR>fX@v;rre1EbP}k_j8`}ob#OLJkN8^>&8^$=}>JV z510+0E{gtdHYUK0G7Q5|xbXkiHPdN161Xml2t{mb-LxcoFQ(+S-c7`%pU<|CZP7ml zsx22=E@4~BR%@2KTGCyvR93Qb6mXwI`P?N#2g0L)uU6K+DegPn%I~QUjscEYxsq~8 z$T2JV5?NIU9I^64I=rC-sBk&*Mshdj54HL$E+o;*fylrHZs&0N^58>ekX%Rk?G#|1 zoiE2b3;!DI;RfgF;8rWIBQFPm6INE>vx82YBtOea0%s-yQMWUo;M8!!dOIOSgQw_V zvz5p5MBB$QfL7+=kYA?h#NLp`6>C5C%$7tx`z6qalqy*>oE0I1^l!6UUo0i-Zi^^7v~);1~yrJlb-{w zB4C>x*h3!Xi34^)EA{W_&3-GdpuYK^9MOFc@Wa`Sp9pS@xMrJYWL( z!w)K%B6Pc*o5L{kjRamqoHtPK5F^GL1u#PB@H_oBb1t$vf1vvGJz^%G2h8`#7xQuE zakDcz%Uq9+a5b36(PE#rQR^@tC~0%GZsUs;d)oXm7m0;EGTvdS*g^L6h$qa= zSlHXg+UhGcFJluu{jaj=p;|?rG2`N4pFCFkX-eV+!Fo97j#=-z%(-}}=NseFWIE#o Fe*h&L!_NQ! delta 1660 zcwSwVYiP}39LK+BXJ^iigN@-ZY{!PV9OoQOrnxgSw=lUx7+bkz>bO&9BAr5QJyysq zc_Ac>Mv*DX3oqu9mZYiClDtAw!uPxXbHe`ZIiKhIe{R43@A53M;njxPKv``DPzc~a z7@bcca^Xe+dZ8y=`2T4e3$(L!li<1(q9|lrT}5f?J`4}kUE3a=%7JNYGuUSRvq6bv zspTBDGPb#9fh(3eIaofYp~;m`p-OBOkK;Veg z#njUS&Kc6D$u(KPA*=7u>b*f=qRY{1$$HN3VaLz85Jx{A7_u)uyPYr8lYw+R?xI&v z{~QiXvh!v5`>ekke&Yd+G;p)k%gFngz)`E^{e0@_RzFFJ1Gk0(VYl-_UaI1R<#s}X z8(ycy8?7F~FFHQR@uW0A4ln7U#a6%TVz3MwL*1Rsgcl+1=jVRo?flBP7K{Mi+7}@dwJEi%9+*GTQ*h2%o5+icncS#71JxC7iblELYv6LzLMRzL5E0# zeu_K@su;#FRiw+jqKC$db7_E>24soM?tsY386+|axneq#GG84ZP#}(E3`GVpA~O35 zMY^O&WZ6v;d$JP6UaUlMBCAehe#{q{SBu1Pz*3Qkyh5ZmR*MYNI5@6>&^tSZhVr>j^OmoD@d^XGG@J1u@P9 zx}*->dRZI-ToWe%H$>*kZIO9!SDeN&6IoYH;%wltSO7c~Stid!R$8-|2fPxe04*ZR z;jNg@P?HU3{582Nuev+47LDY$U%#tQu+LcHDFetqba2oox}Ex>o1q+N4>{MRZYz3> zb;oRz_Bs6~vologOXehC-h@7Rc5(F)^Jwfb_xf1O%nKKqnsAn@($t4@(shtpvw1+J z4JKt|ZP_L5KXAIcx@uFqQl diff --git a/bios/com32/modules/sanboot.c32 b/bios/com32/modules/sanboot.c32 dissimilarity index 88% index 00df85748e3affcc1a6388dee7985857b723e234..6a264370f612ed7d7ef5c07147770614d68d05bb 100755 GIT binary patch delta 551 zcwXDU`-EqLgl7R01A_?z149c70~nYvC@?THXfW_Fa5FG6paB*LW(Tna7#M(B84{SG zcw(Zp4oCwl5F5BLNwNWHPN+VWV;^41v|DSbhL)7xx_EC%cKxiHi5C+56QBk_%;R7P zLgTxk@h#B!Ap1ZbSPZ0v7}zHFGwMt}&giK12B?M|DER?I1LePfXdwOpqJbXx1EN6= zW!S986vpVK4P<@&_dkCM1H}CmK)oRMp8#SmAkG0|Zm^vU3?SUPp@TWtC@p!U#4widBhK0H|GHawDrUE6CdglUD*+;y|m!Ctn1z!0|BoC#$k9 k$blfNfN%vY@)-Pp7!+^@Fp0^9Z0Zs^K&fyf)v&k+08yJrDF6Tf delta 579 zcwSwR%}PR15Xa|!9J`vvH3cmKH6w(CZXrozD zl3t*8E#346ZF+!~S^v3Sp&a-zGlw%X|1;+!_!O$gm+LxFj)?9}axF(mGAKhK3X(?u zEr~m0pidH;2&Hsscr&YM~w0BZ6cR|=7<%Iqv61EL@dV!+b5X-p>nh!|T1B=2C6Qmt C=0ySk diff --git a/bios/com32/rosh/rosh.c32 b/bios/com32/rosh/rosh.c32 index ed1062bdbb3bad0bbd1dbd72f7ee59b796fc8ea3..3d34af2e1327e5afae32cc57a762702bdc988340 100755 GIT binary patch delta 1945 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 diff --git a/bios/com32/sysdump/sysdump.c32 b/bios/com32/sysdump/sysdump.c32 index b0109057cc44dde217c9219478d0edaa3b973184..8d99544e93269e51c33e5248ec431e0c15519a04 100755 GIT binary patch delta 2466 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 GSp5&RkdQn8 diff --git a/bios/core/isolinux-debug.bin b/bios/core/isolinux-debug.bin index 26cff5d89538413166b8883a28285fd3f29c8674..04cad53c7a3825febdc56dfc5fd9da2bc89c0af2 100644 GIT binary patch delta 647 zcwQBdYe-XJ7{{OYJ#(A7+GMG-LXMXbgX~O03u`E02Kqq~Q@fBwy$D69ZQZc5?W~Jd zsOuC(5o$)!#Uc;kjb7%LBqUlyA0;ZwXDrL|lVPp1Z-4&3KhFa{UzqyBv}c6@<|-G0 zq8OCS!Lrgqiyv1BJkO7*0&~WAS^MZbVS|iJeqLmqE|5CX(j|V-k4QVhm}5X91P4oM zXQ)+qL@w!UQ(B>9J-?1}j~|1yuTa7%0UuHpa9P^HQ^f!H@eF1C8zq(%a*JG2@Caoi zDF84IHhiI@N?SZVR!hi+q`Q91rg&Pwt!fL&Pp_h^p^;gK-|gEo@ySG{7zyWp@Vr)^ z5|`~x0B?~w86Ji6M768>oh8=~{NVV!4Tx8Wq_+9j{mo-zH-> zum+qV@rzesgjB^va7lXOvbT-$Lo&8Ni9 z&}`AZi}xJlx)$8Lw}O0Af5?nj)H<(|wx85Gy@muGb)9RqoA3Kx!t-eu(@ZxPt^WZG CMGk%d delta 674 zcwQBdUr1A77>B>_J9C?Bxyf?Q@Zv~0^1?iuk;Ot368qzYB$;KB27MSosm=02&(7Hl zT!K1JP*jvdp@PKd1WwDZb(547gXk_VGSPP|(Xav~UFY1q{P;cZ`(8X!f=CH6w99a5 z;m)53&qoAvq{8R5$dJb|w+s%BdeW?-duk2Saf)XbHfXpU34P97fwjo6MEVj?V1P7< zjF;6d5L@smzOAuCPOo6QwU02r41;9EE5HX1o)8);w|1k>Qnn#O7opJu0xgL9c~%mH z%Y??V5kjw#9aIff+x7HJDZ?d}s0=)Tn;iI*He8f*oY01|;g3y?@4lPx9L0&Eubp$s z3tVo07=rsa`IxZJGDL8aQ?~Klz?C4ZBevB8D~RzTEF&7NL3C6S;UHl>A}k_f46O~s z|9R49Sg$x`LhDa1{K%_r|7BwBB1~%gl1MY-{z^JpgHk>>?XSu*QJ+x~{quT7YgwfT zgNQc3BGx|+qZmG^YhZ%#Dd6asVi!edL&@c>m+58=Y4v-910JB3j{WRW5Kbe_;t+l6bU_q%l zmKy?sQrorltX>91;pX!KA#kNfoC2IetUm<1(^0Dcb%-fS*s#|z6QZrhj@S|W&Y-Q6 zoEB0_+;Gn7<-LNZwAdpQdrH;9j9Fqp$-t7bYAVD%N{+c1=PNhN&+#>NPv!){Z`Ch5 zT-jNT#%Z1>Sn9%s{;Z?wX8sCiblc*n)uOKOV=k&T?aJL27B0Cyc=xzYaOaEZnRw6doPKkV|9TB;uXdHZ%BvvPq(xmqg zi5~=jWiYcHL}DH00)3~=sIMf9$iN`s7e5bQSovl^>jb4vZ1_IX=cr}aDYH%3-oV?u zK3_u|;bj$B8_ZFPy1F~;qq9GdRk&`m`X7jv#U^8 z^6gie_IjduSmw4>O`7DZw=R=_nV>Se;n^tqZsFh0G zOGK5E#@867l`T`0L!HV^>jcLS=uHVh00`b11h0W8#=}1}dN-d0Pm{7MJhP)!CDz#A vhDzz*+XOYyk$@Aqm3slL4z1FM6VsZD#ucSJlrHAJ1mD8eCNRbP;3xkd(}CHE delta 569 zcwQAxUr1A79Q}Qt`*WRZo7>bGRCl3GA69o$VxmZbe}a6lTv|$$4}I+^XiVzCwRx|G ze@a>(!>E^*K|w{}eQ=fCwil^ZFa|z_lnC)H$r-*x*lhRhoWnVXbD~)s&EmUuP1`c> zjq!X;;9@7PRQSeO1D-u@6__)&c-mJ)X7LZqRM!Z;YOi3P>_kLrH;%!mizJ!_;!K71 zlVl|TyafyUiAbWyqN4A#6%AC~M&#W2=}#Ai)9ZSaAt>9pI+~%+P`kk^u{FrA;(R6D zM)n92*?S;~ULXsFur3MPbE#d=-k`D*eyxX{rx!PDJ=cEgNum%Y<*85uS?Gn$!$-($ zmq|}rb%k(fLzR-~lsZ%qgfF&WF27t{+`ClLN_<6QV-H~@cvNW?*;$y%G6}P*pk5l? zr}P;_)&WzcXnvaB!3Ui|kvUXTH)bACzKYBMn;GS$$S`ac`v#N=`WdgFxJ=6`P;HgO z>Wh!61$G7$r^H;vgi&Dqpfu7YO`WY@B7u`_7GOCo2`rVBz(=~J88Ui#ui$BNdjz+q zN$%ISU<=el$E0{+-jXc@A~U*X8C@nv3 x8SFxb=--L5yqVHgB4SvYh`&(uV@E>yY+xh?i diff --git a/bios/core/ldlinux.bin b/bios/core/ldlinux.bin index 40a2ef99936d0e1370716a873c22a0a1750b5c05..3ec428eef4e7086f1b03ee73fabc4fe802ed79f7 100644 GIT binary patch delta 147 zcwSr9#j>o6WrIE=bC$K#W+TQsOoGM=47^-Y3_$RYX_FmDSe}KOi*eRuZ9Y3j&Bo6WrIE=^R@>sHXAYCVG=Y_VBqDFVgQ1FOq=XL!tyNKT#U0PYxCJLYERDM zd(WsjIf~y(MRO)YsbpHlc4h&F7grb*4wQ0qsA6!%gP!0w9x5bMg*;C&oLQ zfAde~;W1J$GB7mOH8jvQG@d+D#*vX>@&g&8$sc6cCJV_%Y|fG8;9v~jT&lY9J^-Ec BG3NjP diff --git a/bios/core/ldlinux.bss b/bios/core/ldlinux.bss index d7bd5dddbd04810be9c052e1cdd0cc318050d821..782ef6f83212d15ff8b67d4ce7f8f461195d3926 100644 GIT binary patch delta 15 WcwTE@X<*r)&&Zr*Ej8JQ@f-jkdIUcJ delta 15 WcwTE@X<*r)&&a&(!Hda8jOPF3;ONs#q{xNN`%d(c*D9_EsIBT*tmmQ<# zN7jsWDYL?GWpae@8EV~ yytVl^_hcS!W3b`61x2ZblV?ddPJSR^GWml9%VZJBh|O7&TpWy%n@bfp-Uk3_xGtms delta 151 zcwPaQ0BHZFf&`|51Ro6wQ(03?NlsN*AT};AG9UmA3K{?a00901vOc!p=&>IQ3IUsw zD+)dVE0byp?*S>3S_?WPDVYFu8D?m=0}ue{)BqsBbqI(iD4G5SDVc~y9K)a}nf?wb zleh~)0o=3u3zG~CG9WTAF*7YOFfB1NlbIMn0RWTW7&4Ra7zUFP8CbJy83+ggSF?2? FvEP$jFX#XO diff --git a/bios/core/lpxelinux.0 b/bios/core/lpxelinux.0 index 56aebca68faada7adae997598adb66a95818e905..77c538025c9ed711768912e62769b812cb6e74f7 100644 GIT binary patch delta 11387 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 Q!O!M%<)gw1zysj_17mO7pa1{> delta 11357 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 JDgYmV{|CVT{Y(G= diff --git a/bios/core/lpxelinux.bin b/bios/core/lpxelinux.bin index 56aebca68faada7adae997598adb66a95818e905..77c538025c9ed711768912e62769b812cb6e74f7 100644 GIT binary patch delta 11387 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 Q!O!M%<)gw1zysj_17mO7pa1{> delta 11357 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 JDgYmV{|CVT{Y(G= diff --git a/bios/core/pxelinux.0 b/bios/core/pxelinux.0 index fb05332f74d3636a8b836a8a1ef3531dbe83ea73..34e4eeeb5c1bdb5e983832792622a853d8ba2f37 100644 GIT binary patch delta 1026 zcwQBfTTGK@9LC@O_x0-mS|}6>Dquf3m0DOSLS(Y6gu)t*pPZ4CHc}ZIh@6L1bUa76wko*rIV;SaD7eC8MO>67CbG7!B3glnL+S^> zBiFn>rBcRJUdWz>rkRh!L(#B{K^OhGNY|tXGe8$SN`_en{m_*zxwz+IE)Vg$__N{9 zkUfzWucW}p1v2OpL_-n&+Rx#}Q&$Z!ntT`)<0JmtFo-jE)d_%0%*e@KBQv{>0=SJv z>|sDkR0=&n0y)V(1o=#y*8`2zmcoCTtvqa$6^T#jTa&L4V=%+e!B9iqQZ9+01naez z!H$2@hPg)aW6l8RaMyuZQ87$2leuU>jEiG~V2QNGYQfj05^k^&S3Onyt6WG)H+%A? z;Ugw+m7NK~qfZ%I zrMkyJrgCHqElD?!2Zi5@4Jacz-QArFnAWNN4VaA$uF&8U&}HyDyEoY03z@y4E9zm$h67{ zUOxQll`g1tyCKOsBH6h;Ajx_m>7oNNnf0|!x)MGR^BSr6*Z$0V1<}uQdi+__BkXxX z6{_P53BncUOJV$cV|ceDAS3V~vmBTgciu{8$|n@ntkELfOUh0(P>_ok-h5Y@)e_~6 zWKY5hR9vO0S~7_%s#2kaj91+S5aN!vH-gk*rJW2ViHy<#ZCSSbF`-F<^>>{6hJ!1C zLAbkG8KkTgNO+cc=VPJCxgiwYHd%aCSyacj$9>liX9Jn5ZfC%Oxq3fnB9-;!lxJI(<4HfeVkADowF_l@j}m6 zkcfM&@pL&D@DJ7`fjLlJx`+P__OTsvl{DGfT=}+5Et^S?9$Yii)-srjD`{D!-!R|D z+TIE1$D6%>u_cMS3%Zb8F$8~?%8E;GWUVsEskDzi#M)|x>*cKTiwjr&w`=U88l?FC z#WdF&Y~Sa=$MbzGB;f5nBV|s*h4>I%=H7rEI97Zq;@_Cg$Vrdg_0BE4h)d}*8HZ!- cMJ^%Vv(E^{%|9X}U{?*Y(3vW7e5l(0KOV1UssI20 delta 1079 zcwQBfYfMvT9EZ>UT-sBhN+~xlXfFr{ET%1&f#R%bRX}MgOurYs3lpbHmW-qWuajktX;}B+`SknnOP)OAv*g$; zdG&h|`tdFDQy$DCi$DuDbXl+(Z1}#wM}rEVS@al0YKgIQlSHjlrKhQsX{vMyJ{=hc zz~L`Mm&nZ{sUpH_AOg(Y*bRK)$waN!z07rlal67*f%=`c=V@i5ArFrY-c<6poK(l0r}@{Ah`iv!Fj zIIyGwV9fxxjDZZCBGCa<;Dgc!5ceoc^ougmy_q*(#BHw>?}|9AYn1vo;0igz&@%Gi zC^mEV1kj2$sy_fPdZ12%I!vWE15}~5jFGTXkmi3SNW7fyMJ1Ul;1xcasfL&@Q`s45 z%HZNu-k>pYZa1*!V*8<+7?5ltZ#{?QN1(tio&AUy$hE=_dCwze!iA=*kBiS4Iq8O{ zRP&UPU|JSw1GMLT)LIkUQl(cB!Gk|8EZk|g0I`QVMv%v7pLFBF7$(;4^b-=gB6nDqF?gfk3?gXAI0mbZ>uc|WU<+Atv^K8zTJ-JJ$DNM*_ zrV@5!9q*y^v0j~3TIq_^V$=RQ5*pC>J8hBrhBZ+#cN6oj+i0$_3h$ySO96D?E0%Ep z1!_AmlaQNa>R?D=+M61nTvM(;y&5e9-}B1{SJ@~Uby>L;**3nAc8&ReV{7~~tYEmt z6|>erwhvWB2e((!c+}d$KtD3p#z7Z0*OrruJ4|60Yy|uF=*6vz`CviSBQq8lC9LA)A}faF3SV8@}{fao!#e zigxb{og8&L-~f8zR)`;MQ=OZ3Qaxobnzgs#A+^QHN9q$^@S)ige@Pr)mje+i@xZ?( z@gCE4!$W3M0Tr!F>}hnu<#OpXhLfNDpWLNh1!SPf-mM`SvQt;&e3E-j97?+p#p?5& zR?aD!aT+?go6F`zsSE1o3;&d@tUz<8DycHchDy;o(%FmpQD(%Ml-KDUX}(2EYyI=+ lXJjIsKcF}Ic7+1&?Yqkg>wc9!F##c0l*k-Dquf3m0DOSLS(Y6gu)t*pPZ4CHc}ZIh@6L1bUa76wko*rIV;SaD7eC8MO>67CbG7!B3glnL+S^> zBiFn>rBcRJUdWz>rkRh!L(#B{K^OhGNY|tXGe8$SN`_en{m_*zxwz+IE)Vg$__N{9 zkUfzWucW}p1v2OpL_-n&+Rx#}Q&$Z!ntT`)<0JmtFo-jE)d_%0%*e@KBQv{>0=SJv z>|sDkR0=&n0y)V(1o=#y*8`2zmcoCTtvqa$6^T#jTa&L4V=%+e!B9iqQZ9+01naez z!H$2@hPg)aW6l8RaMyuZQ87$2leuU>jEiG~V2QNGYQfj05^k^&S3Onyt6WG)H+%A? z;Ugw+m7NK~qfZ%I zrMkyJrgCHqElD?!2Zi5@4Jacz-QArFnAWNN4VaA$uF&8U&}HyDyEoY03z@y4E9zm$h67{ zUOxQll`g1tyCKOsBH6h;Ajx_m>7oNNnf0|!x)MGR^BSr6*Z$0V1<}uQdi+__BkXxX z6{_P53BncUOJV$cV|ceDAS3V~vmBTgciu{8$|n@ntkELfOUh0(P>_ok-h5Y@)e_~6 zWKY5hR9vO0S~7_%s#2kaj91+S5aN!vH-gk*rJW2ViHy<#ZCSSbF`-F<^>>{6hJ!1C zLAbkG8KkTgNO+cc=VPJCxgiwYHd%aCSyacj$9>liX9Jn5ZfC%Oxq3fnB9-;!lxJI(<4HfeVkADowF_l@j}m6 zkcfM&@pL&D@DJ7`fjLlJx`+P__OTsvl{DGfT=}+5Et^S?9$Yii)-srjD`{D!-!R|D z+TIE1$D6%>u_cMS3%Zb8F$8~?%8E;GWUVsEskDzi#M)|x>*cKTiwjr&w`=U88l?FC z#WdF&Y~Sa=$MbzGB;f5nBV|s*h4>I%=H7rEI97Zq;@_Cg$Vrdg_0BE4h)d}*8HZ!- cMJ^%Vv(E^{%|9X}U{?*Y(3vW7e5l(0KOV1UssI20 delta 1079 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 J+XQSC{{fwQ`da`1 diff --git a/bios/extlinux/extlinux b/bios/extlinux/extlinux index 3aabdc06aaca74ad62332fd3e33beaf1265b434d..2ba10b28d8af4b28ce5a57eefae2dc021cc81204 100755 GIT binary patch delta 36768 zcwT&63tUvi_rJ3&>?(^3ii*ffLF2X-H{w-OmWqD zx0iA}+UR`ROYeDf)Oog-j(IHC>F-N}o5kq3o06?rZ_Mp!)&t>ovnYfRb59@cropHb z)Tt_e+%vCOC|zpit4%YZ#yoT9=KA{vquSfMz0o+6KdpzPB7JTiZK4HUXSISRp4k856{q0N~t(`On78J z*a?X_1D-$;XKg_%8g)X99v6?yW=~Go5 zo#8ptQ&;#=^C<*1NxVDz`oNIWl=RLV#~%+GfFf9ZQBk08i}y*Q6q;L}(6u%O8;y#~ zL)vG_8qC3PjKNY>>!krW(3uIR^hV|B1C7CzGE^BbA+7THT?dfSCJDPd*d`uwg?itO z1ZVcWwtY3Fe|t((`n9%!Hcu!Zps=ds0Rv~YUvD*)x?+(Iiv|veO9T;FkqZ`e84#bc zXhx=Cz{s)jW1JMUvnsCvL&n69vo_U=T%m{`fGN)EmC9zn4ElBa1-&ID+4J&2;Yq2| za=&((P@9=hpZP^SE9IYl!8jN%|FNOQ=KuH1HOHBQpQM?_=91mtx4ALEXzXszD}$k= zrDbq4jRDd=|6m=!Fa9HlB6SYvrFE3_z1C4iznh;v zj_mgGvrGrO&G4gBDOw&{`+%8&4!9>A{D1<%#rIrp(ItC#qWN zYHTmv>DeD?oqN>=;()}ITPyoN)qOKC(~Y;>(pTLz?_JhPoNTnqiZr-)4oGvf_ivLa z=kjJIF|(ObD5}O>_CaA6EuLgHi6hKLVbep%3Hdefo7q#$_K7U!PpbF7H18dve|)ZA zS+;rfXpkP2(xhB(tm+E{ooMxORV01i4mfRn+rjUMzCrN&THii>=$I#-1J=+arskRD zR0Gh4^7DDRN~(gKw7)c(bfs^{W|U(SaEzOPMIKRY+R~0)F2HQWT%a}iU;nkXOiDuf z;HWTE^qi<2q*iL(Zx{TQ^$To4n_UW3s(L16a2cH1yH={}7pzUj=NGi@Li?vh(1NQM z>Sgmdr^#mis1~vxS8}dKN9n(?Dx9r+)xQJuaj}1I3uUNAhE!lkW@8DuSl`xya+o)L z2)aJU6L3CiZ}jYpZ;Zw#jf!s73LSr@??PApADy+UJ&B0=)k4c^>GkNgVMzK|flkDh zm=yJIgZK49M$-_17JaNIuEvk5rSGCUqUHS&9j%RW4(p&>OjH+Iu&F_^j%Vp8?K5hH z%M+(gK9*iUU9u;xto1R0bSZr^r~ubPTx=B~K~lt!H<|=ND?(`zSZV2y80x)T<6^MS zp>YETq8nAlJ=L@~2rPT$5f1E@Kd+8Sc3QX5n5x|Q8(Em6?FW33KclPtE^a3-tJf?# zSkBV?_%7J)`|*Qe$z6{h){OKl?3D7iuEmyq+edTYJhA{QuM!UOg+0e@^wFE3amni? zpTb-7#}Jo{XkV%S!rzA%yvT9AaQnT2?iABOoC_Dqwcwg_T1mry5x_H_=r{vrJUQ%z z8+U=QOUhW(hs-McXpuXy&0;k&;F=BBT)5`JH6N}8japm?*P=#wE5j_fmcy0J@+;u7 z!Ii`ED;w2W1sBiKf(AY4?^?Ll!SyCw1#rCumju@a#=H@(x8ag8BfVs8Z`%TikKx(| z*Jp6;fa`O(cEa@~_w0XP!&L~^Zn(aMYfmHEKDZ9U^&MQrtn4Vm<8Ynep8c;Bu9F-$ zn)@CSKfr~d&jq-CWDGySb(N*BF}x1fO}Kt%c?B*9T({x+6RsM#9!M`OZf)Zl{r3p2 zzu~H5`F|LKhvoi-OUEW%59kUP?y^ncGQrghF3(0r;RWgDaJ7J|B`a?Q=)=-&G_-NP zknm%L{(ymSwSy}dt`2Z@f-8*CJ2UJ87|zmN8+FCEY}d2Nv!y}L$(SzP zumuu_L~;VXyq}|WmLhYy+kSdZHx|!l^WC4TrGHM>Po9(Zt>^NeKQ|YrpQY=#x1}37 zfyu+38(zwD-A;avp7)#>JD)S0T~hMOLAJ{0xI7yfCFVywH`tG#>viIDrhW1`WfeRp z)dQ$M3HBs64iAlHYj)pD%^qH;&sN*5Av5TaojML&w~b*zY9~r@`FGiBM5Mi<#G3lf?ahS z%a;Lv#Ac3b&+=y>KNj+SEZ-e8FntH%;vjGH;*9h-|8Q*s!#6OZ&&$9?GnJ=6hh;ZV z8(JQB`O6iA^QIbd=Poycy(5Hh1DqOw`o*gWx0vNW1DmRbO=&vIXMx6V!v4I~0DBD< zoClRuS2(A@ojVB~N?-sjnraoELI=g?34}Qsy+7ptG83*9YcK{z7y~M9%krK;j|KWh zmhTPpBnTT$v-}AVAoK$EXVV(Qt>PVstkM|6G^nuqeV7)#mbZg|HDGaxj6Mk($oxXv ze=z?y@KAz^bzki*uXu=m*bS!SV0u{#6u4_ZUW1X0+p?UJ>JSX zm;)UagUW pj*=TMag$0)2WTqg@CZ9Q&&lz#-iY@~0~~x|%Rw3(NA>Lzw^fSO+{X z+<;)?RhIV!6)uHk(uGyffq>gwVlZMO%csHsr!=<_u8diE0u)3;c;s9*gQ3CYNd(eb z{w<(qK?jpsYWXQZ-vD&ys!4(=3xX+|!}2phV~hUAgRqwW6h`{xdmJ@#%vZnwH`pLL zJjDvoxRM}bcaG>2=&%IBt~y3v3?1x!3OiO4E&m<};F-~&u`OVvvEb=iu)GW-&Vea? ziRE))px&UdDAs-k2w*#YQ#(%}gAH_3^j1Uu6`0dId4xOXoDvXV70mepmcIubJ~`ju z2hM;%7iN=sBYht{sj|Mo5hViu=51QUjQOXy{`Kb@);+2&_CiBG092-jbsNSibVSbv z`DQGi0f{aU$-1)qY|u>W5{|pe@_9i2XH0`Y6)=G1?t~l3@`qet{ki@I0Vpdt2n8~trf(m6|#b%aY1|y1q5j!2rR1olLBiC#I#_u8sJ%C_- zJxt-QlUgL~$u;GY(G$J{(Ke&o_M>ZsxITt0v)4g|Zg9Rau>5ftvG+d>u5}XdcWk6` z9y-|BsDq8rLFKy*j>;Wu%CC`)ltTR{?TJ%kHm)Z$Fb5jwP8p0Gfd;NL+P{xNPa_(w za}4pz*EcMqJ;47dsMz3~GUza(kxku!0Zf7cbYk>oFu<7o9QO)!WU&7~215I_4OSTf z0{y$J!3KT>0j9s*u;2d(0&E8XoSqMlt;c`m>Q_Z47~xnrCCzr%@?V2w^I=(5GWt6( zHlmd>jbW zhVl2tb>GM)c0jx3Fz2tZyblO89E>m!@-{4J2OZ>sio6-ai=fhc@Uvwse*-%1^=`wI zOheCgqhVPt1fx3+$E{^f0YIRj^$o692OUm=-86;ePXc|MHl;Q?ryW4zzBd|{#VVMy z1XyOtEWZE*@+{X}HO}b_^!3o;r;Hv09bABrs*Gvm5{7UaVAU{Yiyo>^v1xZyAb0hc+Buo32h zK$~`gO*p3n2JmpZcJ~7F5g@?KhOnFa12q5w+nf^L1_AtF|8~w9EM;zb1y}Eg+CkoQ zv0;i@0)Gsg=?5?YzJdlnhGnRC4gmNqm2e7S`Ki!k2F%x5HbtXAAkPc1|2x;|6;N3O z7-45t;VBqpw7J32ghI^n{+tszpwt0M+|E zY>0?@1MY;Ajg=YMIT&FsM7={8-4`@A{jG)(U4sq^8jTP=qzSCv$Z1yp6||oU;gmCC zvb(|jmw{(%%?dVwig$sEZ?XI~sObX}{0Ynd11cW?t0bD`m%|7zg2sYaz61{}*R*?_ zm|p|+*X?QWtW}`e;rUoH8e8xL5zV!5Gx2}7{M@#VJyQ0hDi*^6|UdfR~K1yR?8k|SkCY& zLxtf(hMctYQ<;pFnrvS~Hc7(vzEautoWi8f;P|)ooW`=9;ZBCT8180R#PA@)Vur^V zmN7idu$^IcVG+ZF42u~aXIRGYG{bU+7Z_GDe8}(#L(_Q;Ll{OOV)&873MMg}$uN^) z4#RZ}H!JhFQ{r zovm#VGzTu;4O(8;kG0G3yTY+ApV4l1u5M8 zF_6ImIC@1O!Y0!TF_my57)BvN(3-@s2GDI53=0u9u3AJqQ6s_ug~NtnZ_y*d7HmXp zhEW)ngI7j`n8F(o4icOXCR%~yh=H&vA;L}*f>;Hs9q|kBUx;xaC}J@PiU@&c6k-SP zYlv`MibI5OECCS?oFfq7RFs6+9S^>M5#SXNZ9Tw(FwqM)=$im-ZtGyN zVZj)fD@2HVwj-v(VnZAcriwTL)*7M@;fiPjggc1%DwrtP0)g=B7Gi6{orZEe2$v%s z1zSRdSmZJy#3EM_dlRnmBFw)5!k}AN0Qq=t?+0L^!7e{b++ke>gv20R*C(oFn?foFhVnn}fI!<{S~?w|qocMe7hh zf;mSFf;mToL&_#Z2sAe%W`if+f(Z!jw;~GQXc6Izz7z3tn0v%fn0v${;Ag1-F!zYF z!EGVJnfy2+oNUVwyMRp~b_E+ibRpaY#BN{%h!E~yMVtekyb==_J0ezt4Ip|Gt{M@d z=o&-_eIFu@AY3gXoL-(F;$z)QfDm2l5qp9SAeMm*ARYr7K>QlkJ0hGJd=TN#>xXy= z)_)KtAo2`B><>182$5vLWFZg866P#0V){b$`Mn*4gb>VZl_e0Yo@zg(6M^8$f&sYyj~d*Z|@<*pv{H z!3Gdhzz-n)3^suH0Bitp2iO4O%isqPUjZ9HoDMdC7*4oJk(l@nYyfcv*Z?A&oMs}X zgAE|gvRski@H!U-poN>x<_eMne%h`q2zT7TF=j!Tygf1zt7NUOigAqL4% z{5q+T_~Mhn+raUr^HE&p2z%isNQ-XDuPyKuPP=F*QdRLlj5PO1EAm*%JJPkkvYK#q z{sUIU+DYU$K~FhQ+uhD*eXXiW>_b(x^Z#)++FS|z8yewbr0OGW+&4n?63b&~;y;q- zQ9rU>>Uy-3$95-kQ#-#wdg*A0uH|ZJ%~5~yNc!Yxc!>b z_QTc#qWmtIkNcCkQrF`V<}6eIC*)P%#b$D(Imi2ww$j$)Dc+;MQPm`629%43F2HY^ zoi|7xCqhYcsn3b=#4Ht@hza(lOmE#$)$!x<9%Y(S?Yu87vfaVg)$Dwbbmznwo%(g* zp^~XOsOo=mhGD)7N-O}a@3)#&=+TICLYL?{yCY{lQM67_*hl< z;X4MA#locrpWFFPw3jCi=q2)Gq*|I+iPbo*;T5NLbx))W5y&9M8}o{-ZXkatl-cvJ zu_QY`o^mvE;K0q&g27HlAq>+C2j)vN&$Mgd^*Wf&N?OQ%Go{UEMv!kL$C)4!E;aq( zcTytV`ys(C985^rFAX}|GCmiQ!iGG&SryCIHnUcjB(=C@4_%}~<=tCs$MM@OHAzYyR1q!J%A1l}-fj46 zOTfnRYCzkGeTa;+k?IJ>aD1Sh4k-k6I)>f%ii5P8{a6)lf z-uy=0ede+w|tDl`O`xd6L&+n?5TbvoAE*{`5^1EpjUaRs2T{3+tamkpf+KT+H z#*^z^)kNg0>Gb;X2QEk{7dj0^(@{(TI2FjN5SlE)Go_8GF%?wmdQV$N?N;eKBLMK6Lcr~Pe<_|Ek(yr)jxGTuDYO5A`7Ac)Lcq+i1(X@ah8X3GW{duqFLqTTZvcA% z9Kr;?Sekd)zcoSf5>o@mW6-yfDt&yp9XTnTxIB?$O6{&hM4X0xgc@bUL+mMYx_Af| ztGH%4I1nYMP2(=wU;|mw$}8ohtP zYUj@Qm_+mx%9M={HG_d{l94*>a)D+Yg*xoiL;BCv zj^u=N@@m_V7j{#r_SHCtpYI(0&N@|%RK*Sdgi6L=0$VLCq>PJeG;_O$zU)AmG~k!s zBtu&COA47Mo%|)ngicp^_h;bc%OtOBYr6jh@lfgN4SFrm5?621(}iqSu2RCLdIGX2 zrBdm&;lx#Hem%+dzSd*(9V*%od%T+x_!H=4MROQ-sZ+tN*dqTIOAlbuVTK*nUP#s9 zru>HG10DZ7M(qtNqD?A)(k6Rglc%phlUF?`s zQjr2G18vA3S)t9D(y|6ejn1c(Ix}?lrPNM2nkuSK9js3k*Qd%@3bs3l(jboFPt%qv z>p8C0r!KRUG_%rMDzEhQM5mcoVg1!Hi(1v!Qe9=+Cck>(phPK2vN-}<^ne2@4E+T- zP&;0FgadgbCEW;oA;7D_=nP8h%P^3|Sg}+%j1ThIw+fHXy^t=5816#UifZ}86Xy&$ zlwruuZ<2~`1oYmE#T#*_5XzOWFF|9TNL}rX7QFW_?ABkK)~!`I2iBH$siWk6vnwf= z`rRDa)(41+4<%(b873S;xvE;>E?X`A=Vo`}BURiS48PvL<~R4%8X~uy4YilP{52Ga zmwxR7zs+u~hzo7TapN6653t{^8oR55nUiK9t;9U^X3Df`Tr-U~aegP&|7EHCR@)wZ zwaVWpv@b8aG)OD>NO7*4tIl<^;Xd}3Ao>61?~jw`m`w{tX%)t46}s7ZPD=YNu-934 zjBQYas-bqN`*q6HMq?TPOms~%88fTcMzG^Ie;ZxT*Y07{DO%It|3Pc{)thlKP)lj# zgO6GrUsL7@8uJGlbB}svsh-)DtKURlGBp^7UYT$nq?~M*ra}{b(8ffqjRkn57z8ve z^oJIumwyjV$EJ)8P1U(On^Gp=m}#kl)c1<-Ob8Ng>W=Cf6m+^K=#}4TCtjKk1U?p~ z$Z@KM`KBD{_V0a%upz9%1xSsL^*PqPku{F2fUdu2>g-xLfNRt-lJ>P+dgYI9COp76 zylKG_>HR+jjLbnkDHn@R+{NNtW(L1enY!5Hn<#IegJ%C~LRSpG!R5IXgU2(6KtgO?qDxpN}dky z=qJpSStT7O7Sc*?%BV)Y>68TQ?Ne;P%`uwR-zQCVv~IG>*x-0NcR8$$_~EZq@;2ym zFQ0{qeJPg`b4FDi^QmV&Azg5Uk%!V#M}TQ7RotIg{DTyFy94=A8hJawglA(%KU#cU z%DNp8vjq#xwBWYZ(UY6n4)qQ?If%Be{s5i*aSk;)4Mvd;D!pD!cXp`)+N~?Bz1@q9 z97{jZd-A9O-M^#Y8<--^nfDyGr;-tW4>Erj4ZyR$n?y00s30Y*;Dm*l-1I{>NsDbZNghBsfvuS zo*YLxbmXp5>py#?EXB4oyLWRDEfenre;u zRch++r4)B?rS$kl($cS%h3z9Rl3MxrzjwXo{A9&Vu%tt!menq ze69PEZsx0u14jn3)t$Z z@i;g;UyetVSHGu66c0N;gbKX`>W|k>|B9+ZUxHgkDLqDOdo!LC@IO1BfQrNy_Jt#n z6_LftSJ%*g;bGR!Cn4>yt$`>Z@uvszp>nXMy&Vx%;vYk)C4l_z%R@V>|fR3)&+Ea9R?y9vqO?h7` zx!X4cN0O()$u>sTT)T-GcaXw$!esoedojit++$tmY(b%Tw)R z=j~KkPmh7Jrh?lzuX(LN(KA}Y@n^OaV?%^hGtsUk9IGHj!EeriTIvSV>?t)x7(FSI zpiMNi%sA0fgFB*vFB1w!#l)IELg|C8a7t5_(8k4->dZExFv(>TCF9mB4wYC%B(*y*)%*xKKz)S_Ztm3O4=_u4hzNlQypwMCTa zqqs>w-%IlyN{gqY(i?9-Bnv4u!Z~Uiy`>TN{Yh&n<9?s^7t4{UCWUakqF3I6xtVw@ zh1zeBvX9a(NXPDvC%Yv72djfC&SJ@*V+pq(U;8L(4oXn6j>8x%)o{qQOEuDo2NoN? zH52*B&foYJDGKOX$a<2hT9q{AMX+@Hasv_W9dYRS8wNXHum|kQJ72g5Ink64=kv!U zxX*)4^4Gql_YUa#7@eGC=N(Xxq*`l~reLJ;yrssQKkmKqDK1y*CXtWDZ6#Y09`^Lv z_X8Dv4BmomBu)xqtZ?tIlA?ZH)BRUp@O> z1`(C`VlZ}J9ljK0#F;B*reqW>yTp|3RROAXyPaRYm)^j0>_LNlMSA*IhArwaIw>S5 zXO2;uZlzjxtJb1aJKqA?l^+k$TX{JHyIE812gcEjh6t9OVry{3V5&Qn+~ahA@5$Tr z25TF;G#ToNmLlazDQdWgI%I;IOX5~oXh<0XH5_hGHj6JcR_)=lcN?tzl~vzkz3ocg z2`$b95u&IFV-IOJMN?7COGn@*4Oo>#_;KI^Tc~feF0&s%x{!Ua)KW~{ljS%<5$a#L zCnY^@HQ}f4u!mhaS%k}MCZ-f={#ZF*g2lT9OR+uWptcydfL@fg&~H+joqw51ap<6S zgQh=p*TmW)@?>NMtc_04wV3e=g6Z7|D0D|G46jeLAc`lA}C3GG6$bsM6DZfdZYXixA>0qs2>!JhT zX7EV;4;|sHI|e+O&X?}i@&QrwECoK%lB14}g&CRTn1@BfBFuXsMlblg=YTW&RdoVT zyoFlxo-(_oI0<$iORn8<$pwL2m2pSu#$*7A4jo0!-YiGz%7u) z-OgWu8V>w!M{D2-HXvr-N>hF)#^A-Hh=u?!NxSOW&X}=}T1P+*G-uBJ3)Fz7T7+FL z1Jd{@jvG*hRBSmA#cO^5TM5R86qZ|x9(7-eR(Ts|`nMw}NG0Z7aAPfX!~6LW{{;Ko z*{`i4G4XX8^gZ~UIt~=P@F=do*|cyq{En|00i~0m^qCQ~1yOPag+t5(6Ix{`wMcGHyyH?) zJNzVCxqlH=HxAH@lg5vr)}SoJ>SsXMA~dr4u)@w~(rPZ!lqao5kW!pgzY)~s2$zI2 z_QLJB(D|e~P(fUXK6-`T>MN!ig}+68h%(?1UGRRQn_z+cx~gNgS3RwrRQx1l-1-u1 zaOaBz$jY1h8yvTfvY3+A14+2V*Af0Y$Qp;T8U<5GK7W^KT#0OBGcoITS!DVQ&WsCrWHL^t2|10%)yosv+pTHK1MY7DbcUV1DSOf|!mXuj!V%nxq^oFfz19{hdcM*i#;mgQ2ln9%;yt@@ zk0_@RV>jHEl9ZpJbi7bw-ctipy_YhULDArG6LJn9E4LI_57Y9mu>tf4wczTG(4r5p z_LN59Fo^Zx5fp2`{0kxBww!&=o4y5o!AI?}5Uvicgm?}AzpEASw2#N9gItkw@Q#(Z z5--t5awSxPM_=Pwcujeu5X(?aRTu1h@_wy`oUbE&BL@RdRU2g2BUrtV&p3^*b;E@potiR*wr` zrh=Z2DaGhpkL-!V$6vISmB@XpplLyY@(HEACqHo^0k(WPeiK9htJe7!BU{b8jqa`26S(}Ppc@-=4{f@2( z1P3Yb$Rd1>q*8+ImhztRN&{&j2fLBMeLbN(th`^@V#5$Y@}#ZduYE89&uA2Q%$N`N zGFOz;tO!mjZ93o97N%!4F=)7Lx5K=&It*P7K5G< zG2~eh+k+DI0#A8R*pNnI`k|Pcpmkp(@dt=9lHNAI#`0oD{2YJni9`@Ffijv8XLBg< zQVAOVf{s*TN87#(UwuBOm|V5j_35I@m0Ps^DwbSajcgff=w?`q!cf{ zL?=YRIoT2~$kj%&qyP1NIMTX-*hmB}h$g$y3dSfUlyCzG$|G0-=M*gbniihM!ohNR z6Eey00xg*?_iRe?NT|H8Dai_mE5fp=1Mt|5TZq~NLgy#wUou>jV0n}~X=(JLJmCZ6 zIqt+x404@22~QZc7Yj3Dup$a0HWkEB&_ud8T%Rt8;iw~{&@^3)h3pW$okt=yK&2o0 z*dyJs>iP(Iu8H{cxVr~iYZ~*Mng6<-nmIcRouW*?MPrw9o?&5ovl+9ljt zD-^>n6&I6Gr}*zgFExPbe?Tg`zmjL zrZ!sp=vm*P9J~AD>J=j(YHSIPZIFE5gM4E+w;O5I^5@N9$9QL(sy5zHz`cl+zO5g+ z7iHG=Moo`V=26;Opn;*d348?F6#Z4c+DV5_Jxl^+dqr!a<94V2(%SDriSd+ZQ<^mH zKx1&H3>~%Fj!*xKUR8*6H;sPs(`N)cOKG>GVBqJ3quQY%{mXjSw~La$2XeA-jz6U) zC_A<_mJU?+24(pSSnO8MR58&+&%Zpd*|P|QyZyFdglQCX<1zk02AH_%vcD(s9~w>T zrbhkO@wqEjPa;A&-Yuy71ZLSVm7b-<#2OKbJWvYi^YEb3WSsKrH`vls`5jNf2N#sV zUV003S8^}H^@Yo?mpssm1dv{PCwq~1h~K;0Fm^tj6NPu<@Nrv8 zxoRyF{uWA=QG1)WATxEwf4;!>TlJJzwIscKzoWUIdT7Uo8sTg*llyDAyd`+9J#tk` z5)iipJOPQ{gVx%{XNNiuZ*j8*d`<49Y1n=c6>%j8mD(yhz)@2hGP=&5Sh z{v38v+YAFgBINn$=na+b_E>_BPH86xwI$JgWYiS$E(T_NLAesYBe`P0|*z&84w0yfN#45U4I@2(;eL_Br`hafCb~0 zOs};(mgPg_O$)00l};bfO~^-36w`aEns3N0wjx*OHP!IlK_z&R*$$U*~O zr^_5)b4*J&64TzC zw~cPqSW$ZsE9c*WUh&&XLIMb-S z4P;AIP0?$}E4+oz!az(pryXe>@tuL=Rv!JkBUoFk$^K0OoJaTJw_!r*gHK?Oa^AKM zRlfZQRah>Uwj*6T;#>Qoo0!XIUa3EhWI-FRb|73O{#}e9!i5CMzQLqB`C1+xj0YDt zj?1ZQW__(BehhIern$D6V{__k=3M-&u4=4kxvVC6J0>D2`xePbxurTrLS}yu%2TUk zZBW&b)_aaOpzNvT*PIn;oOwg>?;ttMLz{w8~jA zhRbY~U(Q!n#!Rz%nD!<*(b5o{_C6OSIKrjMvBVwPu@9h}S#tQDsaGincWIMv;0v>1S0}TJq%l3Z| zz6sJUOfLcajHS0UYETaP|F3+wUWaS$|8v>qvIeIDmc%C+O5&3NN0XBHv4AODRUgRd z9C|!##*gM4|2)M+3US=0iB#fn(8OrssMJWD(H!UaMB|)EIg=f4Q)05gVTZ(8%dPzQ7uQ;T&5s}9_!z7y-}0;DJ+A((zQ|&< z+6~1=Ds_UJ;|&gP{8sR{Blx-|OP0)zH#H?kg;bL|(rC4cJasRg*;CVn)RD6*yj?^- zR^A*+{Ch8cLsj=jXe%xQ)6rUb3Z%ib%zM0YD>B^%3yI}bj{UD`v?21HP|}W!lRd-0 zGRMo&VI*Xv(hs+XBi#cDrwU`6(k(32yeA=|Q#wMqPdpTJtT&4?u51HgI!$@nxu6Jl~C!Y=@(T2G+BgoAkLQ(Y?XGRCrx@!E`;ks9pGfanyO1#?MV{1!bZM;(2*Y@7hq)$WrN8A5x{!{2=7==huTq4v35_=* zWfSEp^kZj(GfKr;h%X#M9Yi*t%5_}`?_2vevb6BS_}iK#+^|bq!6)zXReWVRoa7oN zP`XtP?g}TS&*bf0N%Vw7=&$OWc8dh!8eeKd^e4cnC58~9g zkYOxap=DoX*<)HZjb(Ss1G*7E@GcX&kxpcgys8`N(>eTiFviOCg5ox?9^v{JuJ_^E z2-m);psoE~IU1{dC*SNwLOgEg!uDey8`2x1%`fE^-N{p(nlHDAAfe=2IVJ*5&!E!? z5^Q|@77neskGwj9%=8+P4})qaK&)Am4-Q-zEvpfvT~jtjJ?N`*Bv@OFoDxa;laJ(r zND|U%`5IU-aUp)%ra^<$rJx+;IF#?h8<4_Lu-8=i=SZ@;_1V=h*s&p@;xLnIE;wn* zpzM>gdXQkZZ7?&+J$XwH;vKkrHN6e)4KCciA*2H;G&3ZS-k^YCPLa>|AO$VXfa+9z z2pTWs<(emP+B-rrFn>egm`NN)MNqgTsd@f*e#pq%mzKw#%Y(<}kH`KIo`pEry zk-+r&xtzDUVJ^-flbK|l#T3PqTWsBs)y&&5DM!w#Q z#MoNqQssrz@3`JD1+d*gZlpDsXFpZRG4QvuHgT>)#xRy7z@jUve( z^dvSz7R#)8FJR5t-L2c zi6TqL89B2bEV~o(=6)pJQxcH$Wixb3u#)D<_xq9czW;(8BAit6SLTB8h_B(nOwSj4 zD7WPI`$M$wuDrKD>0wxxkCi`_YxNVKB!Gk_^IJFG#(c1abWuT|`SI`Gk z_y8uN3~v$d%nHWm_3`Fhg}x#{xw14acRT+gX8XyPqe(l@VOpt&YOPVN$CYt%lNd6U zgvzsGNJQixIY?Y;D79S1=fd`3M&%ZEY`I_`7Oq^uWGSCr%~@L(;e%&ojeIHw4n=e1 z-(nzOOOTrkfC=j?cNzf4p~v#@0pNxn%NYYmbkOI^@a}N^9TOPh%IbBn)|I_^ILZq7 z!~k%;Zt{x*Np$la%bs(+{p3vp!LyaiM+U;m>Mq|LNXEx}n~8V6(G-ElQ`ttdhsx+0 zc&9!?6}&c+I;GzB+z|Y;ugY+F$siIqaYwfH+Fe+Ua0FIkU*SHkz@;cDdl8KMV3&?+ zO(rgVhItre9``)+35_{OzBdStT3wzemuch&S+uR5v@O^ug!>97N5+!&ftwex8shR0 zJ=Q9TGg&#OrynUViX~6Uhw{R~ButmGP#zFL0?1$T!NFuu=(3fl$&C=F@54Wl7+Im5 z&(!WMF@qXU88YSeLx=??Yt|4FWUS7iM&>53A41x7_;Qi9$Nt3E>M{rNwJzqoO|+>Z zsHVT19aFm&I?1yN@I`> zIivO1PiuGltGRd+uUNS$+u~pdi{uaD;8@*v1#*p+Efx}jmScecC{JEzA#WSTWFu*= z92O6x7V^k=u&s~fx$$I^Vcv2it(857k&vM7^ZsiH_!oeM`$Zl&gyOx)!-$C(d|t;o zJ>}^MWILSPJzgLy0p5Ip3^LWg99^&cV6jQ$N60_DKtgOr#kv&P3!ZWqV_XEA3c)9P zFh`;Mf!*{>o`E;g_2#eQO^URT-Yv#mcIS3JZd-zw%x*e+A$$tyFd86 zgm2=`af8!K`6p1gBPCzrAYa0p;Mc`2;_)2hEy6zwr=-kL)kl0Kp69J?(^noShg8ZA ztLG#BGL~f;;An;cY0(hm?z;d4J%L+oGCq=Cq31G}>~lxEl52(&qYe8_SPRG-CP5O1s7Y3bfo$E5IUQK zgw!DO9{wT}#R~C$4McrNhhk_7P7mfi;uX2_MUtqinJIT4LD~+>T8uLx{X=ak<)DyQ zELx00sbDFBolQ6*SdJIr{gSY<$co4Jgu2`ct0A)3(TTo$l3gTZ@9tN+4FTC7?R;&Zrjj={k=VgI3;>V-tyY^qpC% zI&}i{v)E5a*}gWhC_k~f#PX*u-{KICth~YD%d}^Y+|{YpU8;4bXgMgR6e|K$8b3iE zJ&JS;<+G2&v9|^6ZFURDt9XEcL{@-Zwi6R~o4*=q!WYsGDsJ-6iNv?}>#yRy;DbW> zv#%)f)gu&FD=HA<~~&%}MR(ZJ=-qhRl9BPWg`t>q7aWtNzIJWtie#>OIAjSseJ<1EOauV`*8 zHt#7GN*-T>jugLi^zqLR&8U2~h#r$_VQ7|W;YZ;tjKd_P)QncGM%Vym$TvojR>9Y% z<3^94QFag$Ys_DbGU2NiMx|tys=dDEFSkh|?Y+Cv)?UEYAS@_513Ucha#9jm+^v>| z1i~vAQ;cZ5vTY#;N zeWb~@8)duqDh)f@sf&B5izC#<;p*a0b#aKgILOZbatZ~$`w|N57pZDB1WQ@Y@_|wK zm58NG`9`bW)OZ!3=+$yX%Frnvg7I)<@`Ks;m$+wF!=XAl@DgpIKWki)eD^VQi<{vpYRss$}uFY%QVXSx|6reo>*f~saEvU=o>A~A;uFEtLZ`bBe~aD z(yf(&RtSa)_H1JYr!LW}eHHuOtg#Tc`CNDniFfZ)A~cn(k;lnjq>#3Tk0|w^d^Uwd z5ZAX;Nk_v_S~NxOnhJ--_vM+XBy{4HIav1ao+c9P@IyhH^z|1i$G20p5u*(apfB+# z!N{O znQ5ep?Z??jyjMe?ZJ5OQCgn}KLaS=DSBS?byD7)n8hm5Rs3cE!KH3_Sq`X5(yMd&H zr8~FvHo{FiA8H0uxj3D^!Kx3*G$@}<$IxxO^Uar3WiqWBnpMNZg2~}c_|1Xm%V=P* zyfeMilI?sAwU)MW|8XRt%O4q7NmujiP&QAdGwMli^VoS$cY3D%VjNjDxIe9sa#s`n z(#!OfxXfob7ft}*)$putW%X8UlhBHOcjfuxN!yfg6m07>=aIo3U%j6(3D*Q|B4Yxb zxAu0PGQLh3&ADTmU?)A1ISQB^Lz_@%Tgu^oN(Z@eJQ+0EkB+&%>EXzIZX&)zSdMIV zt77NzHBliCU;n_@u&!dTP)3h3wDS3>v~nBKa#fvgROjo}2=!a~uE-U6`2=v-S@MSy zNNYFByi`6ofwYOXji-kyF?+W-OfOh=xePNV2$r3!#lc#OZDBj3o7#5RH|)Iq2b>9u z>^YHq6ioS6O!?pVc2d4o^7)A*tvls&o#GtcIUHWec+?!FR84kL97x$IkDo+R$xV6J zB+_OWRc3lU$5Z6!MC($@h&C+Hrn}+vnccCRH_xb}nGCG*nJ~q**yh_zt zq*^bi*2{K&F0EcFzcGc3aHD)Fa^)0Q*<4~1>l7~UkvX>(-zdE}fp+8N9BZ2LtGsY3*%|!%7;Q1MW212cM*atCxWD23CSE7U zP9vkqDp{IFA~ad%$S0=}e?yyclx3#;=QNVh`j>I_^$t>_9EhLK$nxBmNU|G;wdTtw zULx%c3uvu$`R+@klRqW28RvWrd9!NW3R}Y_$`UO1e3^s=P?qy)Y^wUAzg+?fK16wb zmY2OuqFYm*Wg3rXTB`ajzJ99+^68i11oVPj{W2LymdRaSA%V?q!}zMIMN7Gug*QLO zy+VSGccJ>7SOqEMsAsykk|K}^DZ7b6_`ueT)J8`5D%mH@VT}o}5959{u zO*u76quC+aQznl?rEf<`Zl+L4TB_FL5N+A{_;V<0^(gu#6zqWCq~YFu5En3%sr-RZ z47aUbBENy&8s>}50v{@Gnoc@^7>B2m&OYI3behb0L8x2^e-k0T+^uYUdj^SbH6;xl z#X;&Q@J;Q_vx`lz>L<-0Z@5u`EON~Z(#kN0%8?*@q>~^ILneAM64R+$ zG7Vgw4a<_1tCLVYk8eEbC{Ip2S0rnn?ov635~?&BX_q3uuh}K0aghG4DC( zdr)396OOR6WWQO&f8YVo`GoQHAqRvL0TZyBe%B%7zy})2l@Y4;vfm&re{uxfS(?BG zdstpFi^PQO8ILv2UE|nW4T;ru-W$Kbo0;VFMn_TcVe-{kBrcGW%o@oDwjkA74RME^ zFQ*gIN*#}D`0sc@NFvlJ9h;&tm$H|xjlc}8E`AY%*~sEN72_5& z-W!RXNBr7(&}Kui*|-psFgC=KzMGdB5@ClpH9@&7XU`*%WVQU&JkpsQkbi1tztBBdJHQ z1Je61&==NgpLyLzdn;@hZS7?_YykwU3*_kwNV_&GtMO>8{F02M+8?RaZ^Vg|H!UFD zr!~B9y|PY)4RT3f;H96&Gg5QGnBb; z_?e?+YgIF(=*?Abh#a?e^*w@*EjNj)b@=euvLRhu?WV(L0G4fQS9{?zXUi7x?Qq;g zSK}jRAukg|Tf4d!C9M%xN8#6O;v3VDmY9>i^6*oF_j54XqeC4#OdINt1{`VvE_g2( zlcNORbI9J1Fn!^e%%&xlEgVR+jRRM=HC=e4j^NYqO`KI`udIyJLdRTD@W_p7Q+?Q35~kVmgu+;VNo7XBuA{8LcM8Z2_vEpe}cM%HK_zlbTD zhX^T~`yE~EE+(2v;)n`k-n=$(3x9*;C$7u+o3ttJfZs2>;@uPQ$+QI2vU0`-j=QI> zv~0k?oGe)KSI&T$Z^EgG`8K5xmz-s{GBE)Wwjl8DTW}M*>;@j`Buuj#-gvNViUn_d zWJW;~5uANq7QHD@K#mBB2T@d_TkKJ4*@PYEWUu3_n88={Ma$+e%O<qF@bP|#_2ZEvPFrE)jlyPwnDgdu#47s$|e}7PB_ZntPxVSRE=t=D%!EB{q&P> zsQq9NtDSiiVm+L-k1S5NHxXy-<-xd-ZmIc@iL-^Dv89Ghux+u%+Y(xGvFuE;^Vt>X zy={YVDTy>L?*hA&WfP9FiEfFTT@Q-Lp@ZzS5@s3nz1X=j!YrD(eC~?ovJqEC`M)rh zyye=87$qj@Ba6l1;91t?oy=?@4!4=?FprO~v@3J5tP@A;t9}KxFu}48yHm-MuB_$q zIIZQ;wB@g{DqB{r&g~L?RhFa4a$L>?5Uf_|>6hgJ9Xt!-z9ebF$ZP=8Z?qdya~U zIk^>97cp^@Jq1n(`C|5lG=MY}pHZkuxa;qs^Wy{Ka;izs2D4hv*v)9@cG@kwGxSQN zg;gs-YRVQMpe-hvL`%Ms3vEtC;%6?}Y`}VGrkRwm8vlk;Rakmye9)keaY}^vU^Zdi z;ta+{La%2;fVvGWGfl)>?l^&)4&yb>(7=?6H&t8n+pBOT2Jr?6s6+kvRE_rNr0v zPJbpc{?mZsC?ohU{-~$A#0R#j?EXxf|3R8fPhVVN{dmPXm+wmKqawPV@_3Mw@-|Y6 z>M5X4*cdX~Di`ZHw%d^9ZD3JWM&n&QWq&=b0!gn!X=>z28k_D?y2jM^@)qz-!E=e7 z_kg@3rdCy*pC6g1)7hoW9gOC>TltYjmxLcmEj8!@_T#_* zp(M#iUMFF#6F_Vsr83%DV_vnUp6Dr)n~z zl)3?OLN@8r@r!5-r$HKbIBY9##{Mryh*aeZ`JHSMVKeks*}uEoGDDBIbYV4N;4}!@ zm@@U*U<7YEjj-SlUOk2XT&DJa@n)${B+<#0!2<)SMXW4f@KK_S-YmxLO9c+}Dts!fRM$RIkJg>sq zqUawmkt*;9d^h&h)?6^x~QJkA6VB9L+vHE83o2y7$Lf(@<=Sg?6LH?O1T?4}5 z)Hq~i9eqgtQ+i~D-4#pdL$_StaJgeH2`Az5m|XHk=jj8nLEAA5=m8TQMKp@8LSdSc z+gB>0q6i6ziH3+Kc|`MpsnGQv?*H3+L#O3k_ppA>@#XqJVguo zP(71K?$pBCg?|?(wpJ|i)1C$y5W>%e_}KI09V=a?rE1}7WRgnd)V1X2Q~DE9dri-^ zH^q#?Yj2#XRPAS@AR(^2BxfYkN8~BdJ3a>wf6?fCmJYC8)+joSJO63Vl$1VL-OHf znn+P{R2og?Bxy8`vZU)4#D>Y}Ei_M*wNx){p&i0fdL9?1`Z(?9qP+ITmZ~xx6GBQ> zkA6;BB+A>$Ss66EOEUWLgd$W$ZyS%t7kSP)>)AWI1)CQ>7kWB&v8%GsqK$U!VX`s< zQ@nWT$e?PPqTc+Ht`V7K;Wm0T@_Qd{ef$34Mrhv04@5V9F3PR1eQRzkeLvUkmcE6v z&UL2Oe*Uh5-PcE(TIna9amqbxB}Z?kQ?yrYl}X92l&WU$qPgsxR=X+7_sa@2fZx30 z_%m|&(&fdJgHvVMZpyHnV|P50P@P-d)N5}_vr=i@L)$D}D)hTnT)-Ez*V)yu97;D+ zf_iN~O*09HSq}f6>{O_}beO!UX=xdMiD9Jr<`Ehrs8DXrr7Aim0@r3dHdcDP?S7-sC+$-T6er#@8Ekt*ql)8wKLcLRgFV?p6G&R zuZd&3eZBfo9@UVz@EecTH@D z3^^;cw{Vwz1pGOHM6=`OdFpk z=>8*4g)!=~AE^z|Y?*eBenk*lO2aYFEh?q4ZeLfT$Ec`7ib1io!nYRJIG5Nd6C@6by9@`E!OTLr(D8*x~khRQ6zaDD2LUpQ%%Bs`+HK9 z(>}7wgXJ{dBm8HF_ViPYeV}Y}nPMnYZoN#IG*KN|L6?X+$iPZEN2BDUN?L$}L|>(6 z$v3Y0sUo{b>op4GBJaG0p3z6`@(ZqXDD&9sXzFn??>cowaQ`|@Mwuh3C{m!XTW{c+ z@`)9lUi7|fQ%hY%)gc*P3(t*|vui2D zH>-emc07{%VZHyfd&^z56iDC5bG6icmgBI42PA_Mh6G#3bx5%AM{2`dX7*ZRb)QUO^cuqd?5+Q15i|9=1cyDpL^BZ4HRFvcuO5=;m;=hKp-{neP zr7y&@9wC2>n~IP>QTxmYGvvp8#Pcyz6G@2%S-=XmgZwm7b|E|niolORW|C5l@B-L? zU0g%>E4Tw5fhUQiWx-_CLvMuq^%ys+et18GJb3iC>MJ4!>0yjA34*KWC4_v#xUW@T z>}|MJU!QZVvHfqxj-!omK0;J+{T_taNvz^Q4f%wqXTDtxXw$<^Z96;K8$;#0N z+c9elDJA*=k{gVt5I<`iw83^9@k;%`mCEvZzFn4Jx zq90Jixd9tf5%|I-%yKhlM+e!6D*B#`ok(=q0-v2()H z2d+nT4Ti0-uyAUFjoSfVI=C(Hi`#=%6N!40+F&#_ZW}x@;`YH!klP10$tRNfiRWd9 z0U|zztBc>W#75dGhpaz>4m5NObbCXufbL-EmC!F3I^L!)Ud7r99b{-5bg-eE>KIS4pN0fC^543*Z+}2fWvk;t#rm zz90fj0dv8M82sA+wu8Ok1h@>Uf$}LSUZ54|2d01zfemDWTyP%ns}7;>I=BK11e3um zumpSxc7g(M5mW~OaEYKdQ#R|jJR@ksz*?OhaCu+N{hS+O9d>n2J7 z{&ejEyG8MD$qOP`G<$M?urA9%UFGPblm|H!q&N`q_zt55 z&>6h?oxbtL??TIauay{jtdv`ah|w`F`~OlrZ6)9>7DajJsGpaj=oePkHu{gR@-pK* zgvr8o9+~j>arhc`^t|5P4Kpjovb6dFfN8yTozqRxhB$UleJy34WMWo2?>&s7<_#4k z>+VImP^t_YCfd7?FC`-<>e68%RWzSILQ(z+J{iGRDE%)-`i~GVx@DH(oI$;*p{kB}=z((bkRYiOG_o9OYs&b~yo2GuK9%Tox|coA32k zlzZ}DkZ#E+7PC#3AW@TE=t_F6l8?egpqZB|Oq2c*NX07^GA^=RglHxwM+i?duUfcE z&cWs;TxsJ=<%S3m=*FvHF~u@B0!L-v9F&Cf;K6OT1=mznkTCZHu~nGYeLv3B f)@;Ap)YUGpjxzl3(A^Cgl<5x7mLIg2e&1 delta 36596 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

    vv~1@&WH4Zq$7)m?TBU&ZerAflH5 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 delta 48638 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%0ArFh#m%Z)$}s+)Q4tANha%_}u7u7O=~(6IMJ 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

    >CjqpqXfxmVqte7&fbuib~lGtf>hKSX4& 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 C884Lp diff --git a/bios/linux/syslinux b/bios/linux/syslinux index f79f6c3cb8fb971c606e2cd5e1f25a793c553a77..eba0195a0dfb159cec1ff351dd12d04b78cdc2ce 100755 GIT binary patch delta 35989 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 Iu`Oo)2T-K3Z2$lO diff --git a/bios/linux/syslinux-nomtools b/bios/linux/syslinux-nomtools index f79f6c3cb8fb971c606e2cd5e1f25a793c553a77..eba0195a0dfb159cec1ff351dd12d04b78cdc2ce 100755 GIT binary patch delta 35989 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 Iu`Oo)2T-K3Z2$lO diff --git a/bios/memdisk/memdisk b/bios/memdisk/memdisk index f19e1ac16b3388dfcc6eaada9300dddf4a69d7ec..fc280312c93f0dbba1d875573dee0e0414dace58 100644 GIT binary patch delta 431 zcwU=xhH=gr#tpk!d5jgz^bCx33yM+=88#nh?c-o9-yFu5C%|Yu`KVk9WB6n(`C7*0 z$t&ce`AcjC7+##^U|@)ddd-#5uvtjKfthbRQ1JUv2L=X)Qr7*;HYX^{urZ#PT&tn}SFPhM)FYWft!5#--i!2JD~0?>{Ut{u$wK$Y7+{Qv*`7!yc@eTODc zIO=^4Eq27|F^>&K)stlTxTFR?fc;m|A7L}K>|h~ zf#wPhkP42;J1pfH)hFMu{Az0BAi&UU8&M*}z*5RDEeaKyZ`?e8UO{p zU$Ash5dql>6n_1DNAhMSYh5mGq)^>#?P|!pIosnuI}E&;LZa8<58UK delta 432 zcwU=xhH=gr#tpk!d5jc{3=EBR4GnY+jW-`>?c-pq*c`@}C%|Yk`KVk9W5i@F`C7)5 z$t&ce`AcmD7+##^U|@)ddd-#5xLHWSfthayQ1JUv2L=X)Qr7*;Hzz2|urZ#TT&tn}TwOkQfCYWfVs5#--i!2JD~0?>{Ut{p7)K$Y7+{Qv*`7!yc@eTNoM zH$i<4Eq27|F^>&K)stmTxTFR?fc;m|A7K8KmtY} zf#wPhkP6PpJ1pfHH74J%{Az0JAi&UU8&M*}z*5R6n_1DN6KaW RH;0CwMCP`}-9>Qc0RV}4oB03$ diff --git a/bios/mtools/syslinux b/bios/mtools/syslinux index 3df5c7b1f57426b688aa221e4f2ec1f728b09099..f1a5b3aa8f5ed92a9040cb7974b1e56c8af77825 100755 GIT binary patch delta 35958 zcwT&c4SY;T_y3)nmEFj)K@gEhL=Xf?y@dqvvXQEgAc?o4ElMa#mQ=CfCgi%d4Z+ZA zORK7Ay`>Vbjh7~&N<@_QQKHrMZj%zFq^SEpXYOngp6CB-Ka=mBnKNh3oH=vm%zatK z=gpPp&DnvXxy_oOv-7sMVc5 z7;=p!#qARzH)m%3mx-Elrv4iEJKnQhV`0D1l&qe07X<0FPl_;I*q@W*IbSs7=9tV0 z-U75!yFAe}=aZ+JCRLiJn{spBFux|6au1Z6(}@`grnlK;Fljy1oQVy$=>@;>f`*p% zp?U|+-1H9Irej|12}9UgRbnuOm&)G3@zVuR2X_66Wpd975WO>wN2+#TNKWO$Acf3= z)CY<3uTrH?ks%oCw30KY90#!~UuE<;4=o`ftfutLDfxlpXnU+o@B0Lb1X~l<*rYDj zG_A1SlLJG%W^maXf3Ayqv{663;1yor-Z)$@cv&wvFsSiGcTif>77_4wc#F4svf9;q z45o^Zc&!J^ZTgbYLZ52U9Z=Y5uZlodUAsLx<9}PUYse@vfMU!zEDHB+0X$z~f2aC( z5MiFOeRq=ToXD1Y;csQjfF_K^&i&9?xA+txMbLUw=d|(*(nY+sUuQkcFFA}AG&oQr z$3K<29G0!sko}|_lYh}(a{_VgFb39u`>Pq-P?>}c`s|dZ|3@_Nw zYOCm#o6|eM;o$}4a#225?}dP@CZyYeG2Ir6O}F&kF%m6MMg1*|S?<&n{uzI?tUqH9Y6z z@dI+I#)qz*V9xQIFy_F#3H426?13dyJ}DoX{gNPbMYT>#!JAF31i9#Pc+3!dXgD=Tdl;C*k|xIDUfDDnhj|Vq`8pZtiy92r1^F7 zHjZhK7DHOX^GhMwA*J*DvN~;+Lz4KltiucJ?EA-xMJ8`4@xIgr+I;`NX=K%$tT zuM8n=>|5aK6G+=3p>x~`X&0p3kiHb2{cj(n1CVkdeFf=Yow`GijzjtyQUNbJ$?-I# zZ-i(6D}r=J5Jn2$!o_(=rI5-Xea{JggmjHxU*~uO($A27<9QX56Ve}${)AKo=^lM0 zmNd5ub^dz*=^sdsc>XcRCy@SyB=U(j0M>(Kf>a-p8B#+?UUdwk5nMNh)C5vfUfvAQ zhhMkQ(JuJHg&!~U2MmDJ8d4CXwvgIG>cHzea_j^c%C9@u>9i|cheLXyPFXj&?hdI3 zq@Iv^LF&!x`;cToh=NRiUN8V~Aio~WF$ORe($G3gUxMoqkP>*=NRFcclOQGM9ea^n zaw8|`nm7{B+E}l)DXb6S7td$&E$KxdYxKL@v&He03@2S1?KM1G{0AK{9H{Tqp$>$! zkiH4UWF%dKwd3kP+vqAifxPN9c(&1IN=A@?gcZhTsq>!e^6lpYc8bsD-+!+CG5Y2R z(*KpS&lP`Er&%EWd5+D>=M-@2IWbl|r^ml3i3j!0d#-rQj^<~J$I@lc znv~J40CevN;zj1si%5C*IR+hRqXg2GOrir4K($+*t6f6h#Nq?b3BQzXh2qxTJf1BM zd`{SD^d^uICnY0+iT8809clPT($)UsbBeNhJ)7_PTrIkE0R`w6gNK@bXYt(RSB1mi8frH{Qa>|;k@(iUIT9Vq5o18yD$4n)-R2cW|l zKj}LG<`aSbP=O#!tf%Kafb(tGL7MXV&tQO~VaxF4`8F0o*alu{F~PjuC|oiLLdjJk z_%Mkq!jXFDOhiGCyuE}Opt!1=wG7{bhSlKWC-D3O5MW)2?&&fA0tlFT85B(P{9q7h z%tk@z!s|mppgr5b!(!eJ1)HG3ZP-WN<^;VVf8~lG4B`1qV6gZ-m(T(UFIYi@1w8*b*i&_Tf^0x^(Y-v{!4TZqt%GmL@}MuCc3 z^1K(+M??L3p6}s~9v#*e&wm2~gp^@_cAX*aA)6rVO6CNUp+W8kFf9f>?*IX-z~bU~ z{RCi;`h~tRVg4VWuiRW~#2UDW1rWvx$LcOU`5O^8BX=XqaH;ajjwI`IY~2)LsPR)L$I?+ZOmfGDILuQ$TtPJ4q07kK_U zOx;8XhJJUc95iy{ENF;pG!BgLop@qrjsOeNp`hO=A{^uS6~JKaf6!Uz`I|7pZD8sf zd3~T8MnknDeh1q7Ll7|DWpvPP+sCyd9tHy}03$Z>d=d!9AXYT{wa0%6K#@%(hq*!+L+tgGiggOPsuzQBwe z^QADrb#{mw&+-B^u6T&&T_gGwIxK{E>=CbD03GB#g>B12&%X}>c%{^8Yzr7^GA>xT^_u!C;$*Vg7=gE_sONra28DFFeN!<@g# z^LL@cCzopdz;_@}*-TPnq#uAMRoB!yqBx-6yj_o_G5-|Tzu{8tx<}PTm(}K5fyxZ9 zZaeS>?a;G9z9G-2z(pqraqIE?Owdg8LP5C0^O;cpcvP)Gr7(cSoZCDa!Z&=YQgFr3%h52I^^fIo^av$sKo?r`!k^89HSvG?Oz z*E#{{+tpFI1RdilF_IHpHbdyU-07%mM~o8G%V4z~F~E z`}axcX;__gjSx6&qbs1|5dgv8mfIfC(^w_Po9!3^3}jAiTyL8SMWL zp`y*ITB{5Of&N`oYXiT408=*9?)Tq=06Rbcm*>M1?de~HnpM#rMmQRdPcuFB{63Iu zE-cG(UcU*ZT=gLAD985y-XPIOu!w!RYyApFa4cV7`!nW$!@U3wdONwJ$_0TcVVO?l zQ}jCI2ZKN@IDHRX_jPPyC-5zSIe(4keL$e0V1xmXw_`zT=pX}B~bT|Qa(?p&>1NCF{DYdgXZ3`0j zx>>s{mcyLI!ZJ(X`8PozuM*u=MF}vBuVaM6;NqMoshOhVDBxyYrI>F9 z19%L+-?bT0n9>J%wX33=8y?|-pPe(@3nTgt)_pK1xC=(K5<;r)cz)qC%gjR<3RBSP zsvr6w20&oDOX5F306*BjU2_IYS(s8P z)HtHnkT+khouZ~d9|ec~zFdGk!0;1Th6dLFfZkdT#}J;M1T0fvzE<%m8UX@%mBIe+ zTBkpN%EG`1JMsok!6+jwwT>nPIREFL+7PQNXlPS7VRwd@%Av#1GNERfU4)J%*V%m5 z0HcgL`PLvn#25BjSLg#O9x|H<2hDmOZ=Ym5a0_nd@7HQHwLYxB0NASL zyNm)gc%U^4&?Q|ps^`yYe#e)I>@dwLiCVkuzHiATm2s3 zp9JBQD`IlE!~7S6XKT(2HiC-xf{JhP{B~&R0~7oy&p!s0_k~pw$@7b0gqJ~MfjnP` z2bSyl?N7|Fg!Zcs)_T?oP;J46T37v^0T`6!{rxK0DSD2YI(y2XIdf*tm^wf2!>L4U zXh(BF*|%`q&2cZse2xVii#e8XyvnhP<9&|R9G`F$&gy93Xwq?{VCDs09KAXEaP;FC z$T65>2**&4VH~^Di>ai&eGJb|<~W_>T#jiR(>Z2w%;va};}(uPIPT?`%kebFVvbjJ zv5NG5gffa`fv>47|JnHKjj-xqF;W(XR8bdI;#k^oO$83&UIBw&Z z%Q2s0F~@TpuW>BrSjF+aYar)zG;#DnjDm|mUJ$}DjAI1HXpXTQ<2jDWTeE=l62tQ^ z==sweOE_NRsB*l|QJ`KA;sq+lN{&?=?{lo?_=KZSs$(|CbsRTx z+{|$c$88*UaNNxhOkyuD$mN*N@hHavj;A>mb3Dhfgku@Ua*p>oKH+G-q+>A02twRIaYHt{h*_nqaVjWj@!U%5_cl(K>Qch z7>Ggqi4YB9xcg&Bg9UI13qyqMraNL15r%P$K!or$o?{iD`wSQtB5YyRh^Q(w9a3_clz=jba3b>E> zJCu?fsMA{@d; zBf=SL3?jrg6Ah=h&H`6nju#k3 zB36P8AbJy_5)tC*Dntl^?;{Q)LNy|sW1b-5liw?V5N8_@yMYZL7K05So&p;{+z0C& z5l#<2h;aP%L%ag(KM*e<1`S5+12%vNF>5Fy90|h^Aqwb@*cWU75d!rn#67V2Bf_y^ zFe1d$v53HT7@`>*7h*K5dqg<5k3n1tHo)j0I-iUegTMw5-v%2%gv0VIM2NTNBE}IR z74coL0Yod<03sYQ(-DV&4IsvX4IsV*Z|`PHUMZhCKF)`77QiA zHbgk2?LdqN8$gU8!d}D#umQx8U;~I3VedlhO@so((Xe+R!U?084G8=I6O0HYh>73_ z5aAen74aRgfh)NFBf$}10UYLTAvPm|ikJd^05KVC0C5c10AfF|0mSiO1Bm!!2ON*F z3;2A*PO$MH!qL)<_%hf4BAhP05hsETAi^=l?<%f;I70wa!u1@LvV-CV8?+fx+a@g$!U5e zn|vWQlj({zB%K(kaV>e9R8eUyITN%U-0w6gLP#CvIIt0}6?gTQCioheLow!SnsOwH z&dwpt$U~Z$Lpt|SR}jG=eaIWx+AGpV=rA4Hdpe}FeVV35-`6yU^s$R=V>RF(U?WA* z${f#v_1qLA5*V&#EpP@%^p$laSZun2u3QI^!2|l~IuhFa zOeT!)d;U(9`X2P^h%u;_sk)AIBVSU#^`w8}Z7#X$snJhSj1TD>>q#5W`q;Ke{$7y= z)A!etU^18%tS3Gso&K<%bTrcpA{>V82&DRrS~ftRvuWoIB+QbA3K8VY$~(v`ozB`o zdXbiN+Xj;8J#xRM#j8`HMmbgnf0G@Okv5V6-X9S5VdwtGXT&-y%q1g@^_#s(HB)aiKl0sza_7RD1iek!X2HEIfqmhRgE%<&Nu$)??`hhy zQ{r3ny{%*jIYfWnN^(NmrV$~tG*y)AcQ_%RRik029DhnasR$L966If^nN;be-uMe! zKB8McCcff*H+t-2(zVGBREEP^6|ZJOBgI;&zDu=_NtdB-ECeIWtOEVZ>s5T^@yKo% zB}}LUARQ^eOsZLtx}$uIPGNu5H^7wTLM5jFC^AbGX*XT?32E2mv>SWd(@l$hBF8|x zV$@lTS7A&jjP@3*w26C(91|iPQQhdbpOBXJa=lI1NJkFNF;3IF`}MiLgL7zu$UuQ* zWk+OXa*RPb?JXU-%Ea@*%2%;c3hh* z7_%D0^6aG+=|};6Ya3}Z!fVx2P5z<73GL>z>=GLhVp8=q0@5qbT^BORK!&4iI1UFB z^n&cT1(@0t2DP46Y$GiiokNuzLzB$%&Qu_0hlHxekgraG#CZPQ}kieDhc&DN2tBT;LX6QQe^$b{V9gGd?4fyhq6n z(sST$hieuc3k1J;MELDZI6p!9gyYmY*MZMnv--TZc8~zlP<#^?3pzPPs&b>-KL@AX zn11^?i6JLwtDNdFO z=$xIzzd6DBh2~n4hoE^iiGH$^v?gchH#^CAl1f|eB4J_Ypf9;f9d;jkOP!(|!}Y7I zTnvsy4Qx@jn-<6;jV{{-JSylXyGWasrF!El_gLdTE-@`dQW?Do+{gZ?6Rg$=pd4KR z-syJQ{{_3qxuMt3((7l`87G^^zCN`AxT`&HfB@^8<2X;#l-!wV&R1A^2U3OJbCyGelG9i1>+C+zqv zMTaj)K=TJWMIxiHWE$Pk3ZL$$lfHm`_Xb@8(Dq)lxpUQ0&kg9u zUy^p@8+ztT(lYqPTqfM1DwiIzTzc63NYlbKW!>WtYT82rn$0`FC>K=e26z`;-H~G2 zcMs`7Qt13WB$3RaXZDaNGx}xqz5f8YR7@M~B`drB4FOisiggA(ep6O#G_ZAUQLnLz zjWrcWq88Djy<{k?Xw`XtW5@pb z^lq!bxv({Lz#|4TEVxCoxt4A z7W?(P$UISJ{_XFqnO}`*7eH+hi<$5VuX7(G9;Xw3s1v_XL!47XTu-RkcwaHsT8cp( zcL~IN*^x5|Soi^t@j8z;@x;;}>hu!@aHOy1lb~tH%T&wjk*AB7Iu1w8N}Z&pTYOhT z&cRT?Sy_dWPSGX(;WySxBV7x!6b1fY7wmG~M z`u?K6t8e)Tu3P7D*4bkE+9A@#j7KA63e^afNPyr#Ll<` ze0mhR9izI|gSCGE^CTNh&aJnxmoKT;5#k;Bgc~()B?`&`*2-NSQKvgmjm7RhLk{lF zk&MA1I_U^$?y=ld#~*d>vp1`_LDQflY73TFSjiuHZ%=;Kcd||B03m3< zb{=~C{UU01G7M%KsP;xBiv?&YvVN3TeUx-3!$-5qFtwlz0ee1 za9gG95LX7Btr8qbhTG~2dgwSA>`U|=drLXfl?hgu^Q3^Tz8-D$$pspkPvZKUfpp|G<%xiZ2~G^>wa(<+@IMS&gT@Y?Yk3bj#OZgi1~- zGda~CROP(R&d1H5q1qQz;XIG|srT72Q$I4Qt1jbt@zZe-+7^O2d#JfUC>K?jQ%Jn3 zp2zDk<1)3hVT$yG-&JX+W}ihF-tyKCV3|Yel#8c?j)j_C8#_iPEQIk6A!>JY+7D8j z$bac~Wz-GdfEzN%)fHlRflCw+!@$G{05OytbdH_Tc%^F3gK^ zpOlWXASJb_ekkY({CH4u&|9zz<0qbS9fnQno-*Wmb}SCgA(h}+=k;&dS*L+R8pwoR z2<^w}cNbJmMDK!INfA4m>pM6eIPgD*6pM<)uLtB4;icgP>YnT9((r8Tkm9lKxV^SA z2P;p?QWPGYncs6TZ+!?~;tDUgw@YRN1?4o5`r(1^$Rc1-F$S7Wd5Y>yYgw~}u;5U& z-*laSDiR!0B6gTk2(!A9pa5)i4Og9I!}HW^mC5P{wD1J!6^uj4)Zm<)Y>x0(DISFLFuuVgZU* zWDaT|wW$&vEH9sqrk#VMm2)ECZ~BpH<`$D3iBNbGHp(ZJ zxT>CV(Y{a{DKVSygmBbraojinMOLn-v!&=_@JKM|G$FIYp9v2eI;rN$hst z`2;z!O1{V}qz4^#8qOEZY07ERv(4oaB&$j!f}|SMwJ=5FPbD%t4pa}Zx-xp|G#N|w zQvYwrilEX9SoY^=A{@qdQSuvuGSsxwFcNDeoSGduRrH&0h}Dko@`OKdNH@R2DixG2 zr#(s1Y-+Ol5*WQ>v60AkPdE+IO`}7~J_sh}oh9FeoMO&`GylUvi~_(srR!g@`w?uZ zj7*4kNKPn-*KAd4eX!RU$y((to%UY#6j!coqasD)cC&=ag`}I$q4R72qwscc9dTc# zWrd`l*K4eHDb~XIU7AjVipXG-g_U+3MQ0ZgKU2kbm~$UR*A|g(y|03tYD@tbzpsez zYngBs3%FsKWb0lfaYscf&9=iKEzV;%44ntjd|#tai%5z+;y8LOtWm!^#Z0`JX3N!V z`AH6`3DT?IA7eKT)BAO?B{`0aVfzn}t-F=x;F`g5cdHqv+5X>6vKx%H7LJ^kp`BvQ zSDzH2p7WWDCb;9oZG(k}H3OlA(;doYNJXZKgVK^*qpgp+{9A0dL(Tj~k4Hg-2qwbl zWBR?=Boy(ij0B5Q^&5jZn7;5ce0 z9R~WkBQEPOMkp91(ulKUWaA7R=`!d&{DBic6jXnuo6nK}GM64bOZ=MW9|7Nk=kv#G zoVRWp@q9a%-Z@L8RuSwZ2ENjou8oX_iJ9P>gGEEaEO`*pXMan&_5JR!rj3ItZ@JoX zu-IWOh=*;-nxX!E6mK+JGeD|(>X?&k$1;Lg$4;Vx(pm9<4d+O+!IRG5=oSrUqf1mB zQU;t;Rqq03Lrq{&!R#GlY70Ef)Ry_c=B}_nPg2051jK~PoN~_n0LcXx5ynID};SVf_!ct z)|ZqLSEeME*nAvPM`ZUIP5BNEF^8ZxC9#ZL!G(g|q3sT5f*j9B+ePh`t80(yu{M%0 z^VVg3AO21n16rPU5*Oo4R=5KGj;$C5r4yj^nK85kSZD=JDAak_{yUI1AMLFs>TpP@teG2~c%C#HMv8E5{f03wBwvxg za~#-#>t2d~1X>szY=~THu=y%UCix%55Uln+#@4@|;x1cZKd)%Fq)|;>Yg%xg1dmx$ zh#YsnM4(=M_i(L8_fZ$Hsx?q0Uy&XW=>|wU7^OAI=HT!L*qvi^u;(Gdf(3QtVWz`| z(Y66FDjIbGPRd>A{0k)6xa%9_R7fvgApSj8vdqUr@y2O6?lf^%WBWb@9t#@k+9+aQ zSXDG#wxkLlxh(KTc5O;XIGIipONf=MpzoKEnZ`M%k^B7?<6b%?NF8v6S3U2}FaaO($8K94- z1}}Jm6@7@UC)SCbL9CBXpje0LPnSrjJ^hgDE^~G-@LdP3M0f-#Hb%$)D>Va}HZk}N zQ^-nk5y<`wq9u#idcU>`1xH`I3yU>T~ZqRb&B9M)UVtTNIod;ri?v{2{Z!x=u( zQr0+YAKOc&R*#>kKVVv2fU0OK=L3TzGlnS66KrfX*pP+yRM`s6Ykd&Yl_@+<&CMVgCy z+xi2z+8|zosT!q5vFc=~PSFnGT!)vcO@LyY^74~2r*s-0M$_#X8oYB{OOrfGy>}dm z8a_jGc0V3_P`6+i+1aDi3ykQGK}4|ZDS#JC&;tmv1_!%2Ajucm7OakkfyUa5mV;2n)IW|X z58C{84BL=8Z4P0ipf?My+l(H%LM%hRVD!ZULHNrcairpnM;K)bOp2{>WR4HyZ1t5! znWak&y-zL;0B<7|>23;isdU-*4hmzjK3ycHh952QV|2hT` z@RBB3!i?p3Z%ONu`i49#*bG5CxZuy|dsiWJm_iRMdjF#g|1Qhr!5Ej_0ALTOto&q6S9|h`dap_CYmQkiuPbFsx9_s7IRQSTo!^E1D z(Txlch&ECbR?|o-6y-2DR9jzmRosLM^#QDa ziz*iGV}<9iZ~!g&51C+mk(ErL-L8>L5<(AMBWbM$=VRHVzIaB*y+nHf;_4^pUsBxE zAUfhF($v(5(S-J;vwk8DVx*6LBB8M(@~|)^3LBy@N_|-g0ZmL(h8m{HN+{~cB-fv& zL_>C!{=I^wU3^46QjuOgR55wgGjO|IJW-uuN!2)@nSC4RnlGMuw!i6 zu4#356mTyJtKZ%m-HSS7M;+Fq)H$qf71V*DxXV%)+7$b%?%B)rMGGoL*p;00FqM+6M~qI^<6PfYu= z#`W!G)!#yOf_zartHr82x7U>pRQC=e`5Z_bHm@Wl&diR<5|BC42n4{rw`0I*lEtwY z3n2ka+!X5nGw~l3$=W7G{MRYFGd7PWatYp8DE|~@**J-vvy`|h1&SJ=6wK$bBaFuw z^_Ts~>M7myGm(O_i(xapIW2p1FCw&n^jl9NoQ0Iood~@k`E{rLej%+$_q>;XA)AQb zd)qOZK9?SWH}CLiUSf%6E0+I}i_{T$jejN6MbqOikbkpobouY3yYJU5_u~utk)lez zkiZ4sM@xPO*L9Fq{7za8UI?y$#29o*T~;$nO=PX-zVO^)82f4M_6LgX%BY6YIFcsbRRrMKFFwHl25exq+O zW^igsv`H?)doTt%>kf3`OIO|@Ta3d$MdBH>OBHEJhS8x_BnaS*D$>GqXB+cz9qBt& zWF#r4H>=2KV>BxqPowUV7PG#knigX@9;2xz;Hu)LT&?>N7D2c%%2pjf3~+8&pzB?O zVY(x`2d74+AF*QKlGz*!mw1PUVy9KSQ?N7Cf?TXeFzOUWX%B(!FDTLk8u%CSXrVPWGU3G3Kh18EpsRh*8hZ)=o~pR=j4&;h$A zT;XOpUZD2I{yvRrW69jk_G)aXKjw`^BBWa>sbNyJhvi+oK`}E2%j=U8+0G~w1v_vg zXmSo-WR_Yo6LIfSAcoK)$&%6e_yM(gX)W}MABC!C@G1Yl}8J_Q%5M z^bmg3CKuiN6gDZ>P3{o&tF5TQ5?XYRbZ&wE{wo?3rNUz#jf))hRw8fd-c#1H&|vEcNFiz0XS zoV79QBfzo(f7zv3`qEKCYO|~osk}UDvaNyTVCkxiCdJhAZ_=v!#d=8DVPRnUqY#U9 zisjl^G7htgwwBCK>)~qd%CqzxHL_x(+}g*Rg)kv4xN z#tb zAYQYbs~D2LdD9B10wf}Da4IVM{|Zzg}ll}iwu|H5xc)bwtbAG+04nrFFf2S-+Z$p~>eLdS=Q{%46)u(j2$LRpEL=D<#$2DAl#|TbaFflZ zNX)%>Etxb;P8vS5)Z0ywqUq*G#J|UacQoyAn7-mt@H$ezo(R`qT9$*2GD=h32gq?H z70$zN=ye0>?MI|F8AH7ugJq7Tk&j96aJ4sX4=1_?5J8hi*JoQ;lI37*0z1^Dr;QeD z=KZGhw2?xp!E!J@K0Pf-NHxpfOTQVVpG_WT<-6%=i9)KIbQg)}mybzv$qe>|{M>i2S^ zy_9Hg*pEc5WIVfRk;!Pb_!IV45lSxDX5+45`j?C%iFCrhq*HT!Kp4mCJIr;8jsBq@ z{!7~RoTadMze1IZ$JO14)QyblfFC~`e5aPKg80HIKZ3~SGy3RXBKcNtK$0eY7=YW- zXr>$1ys%2Sl1*(k4WFDr#A@ zi71AUuV|Dg2B1DgG060AEe@-(4_zUO(;E%Uf&sObA9>AzNv-n;6`F@k&@MgM`=pC?l1-mQm4er~qF1Rf!Gc`DX-JO6@ zPNbI%Vs?}7Ky8{KSc-yBHJ8mmBwbKX3^M-oE)J`jepF9f*v2;#pA?wuVPtU#UuD5F zwra@4yJ`A3eQ0lYF<@HFJkD8BJC7*_Hjjaa@VPXfpFJ6Dy4uz)dtWc>ShsAYUe>j4 z*?fB3T?{1q=?!-=%HA}CDKEHYxAlf8P$yx##lhWc)%T~w)RAds!aUP)sr26+AD8~S zLIoS=XcdZJl|zidTnnpb$fdgDl{-nX>qX0R3Wih{)v{= z7h487>DX#JT7vxajl#;b9 z1B^#`0}o{esi1*+i+*4hTafo?o>_dsxH=0Pe@3g!;t;zBs1?s|a*6sBnh%jQlkEyb z;&+$h!_}vOwqtC8{k)tR^s=a66y3Itt)}mmv!|7H-s_Mm!_>-^$lln1J$^X52yf6j zq;tifrw^902UhqnCaf6m5ARM3!sq%imJF4>Ou(qpbSh7W^b%%!)2j`{)?P#O(gvEX zO0%6-$54-k;v^D6XEYSU!hcW4%D0R~)~oo~*fGSU-olQpWsV`C>JNBXBrT~FY)$j= zxwN{Ho^2@ll3DcEhGH8MOFb+wVI66Eix@;6(xDb`Ll0?+MT`vGwFqww*W50FAug+2 z4QpM^%fwNZ(r+wcCUK`Pd5MvYcP@I)?e?Y{y}+}T&=X#;vbxfry~MFmU!~%0Z!|@q z@lv<5?6G3D1~%1Xn1WZOGN;tTkr9kPW2+9O3mb_6<99C6U)t+XC7*!R*h~HkSKwPH zDSw5GoOk4$)LF*8^$hV4Mm*+u;%{`~Kzg^4=pEYW`RZc5`d%92)s69jO+x-l6=-;4 zu}#3{`Mia)IM{%#3J05Qg3Hqnr}G<&PsvAgUK6o{m^hF26~$KMZ+f(e*gs^^GSuXH zh|v$>?>dH;s+Usr8%x}v#xjCb+QwV7!eq_x76VO{>CDL7=^Agbb=xoJ>-+1EQni@c zPpWpaWNu`v@=g0dZT(?5PMNN0F1Dam-r^FYiM4J+v%N(hy1J=YpPZ$%so2VWJPgq3 z&?(EBipxxacBG6nU_Z@0@kfC14qk!!GqpE^Ak~TLN8D(fvly#Z(FQHV;J~hP{%Z*Mi^lR_`3-Og z1$hZAL^Cn^yp3(T(J8*-4mh%iMvZA9#;Id4NeyFw2j!65GmW8C9bBL_a6c#JMZYvJ(9iLvTg2 ze4JmkGj<~(e+X!ngVCHe)hsTlGE_a8hBE*3FE#mzt;8#{Xo#N}V0xRCZupmu@DqdV zxA2B`RPa8}d%FrH4^KfDFs(>>0);yhvvLH;7fNRM>*i4KXb$q`<8RriiL*5AfmDuX zd0WeA%Z`-5RpL&Y*8}M)mZciuScbu9{y?Pe^(F}V4Q{mw_<(w;K}cPA$P?{~R{4o0 zJN6s93bdCcVVANhmBYZLDwIt#;%&e8jN3nV- ziQaOImz?Bn$+P-Q!}o#Y7_%b>$E$bEK4xQMo*|fOJJ;FjJZIPPOtpZ1L2x()$VCrt zRM=Osk!Bf!*=+WglL9RVrOQwhEywuPRvLoa762xOCR2qA7zxc^Bh(T zT3Jh@14Qr0+cPw6(m3d6fuEeXV^v&!R$OJF^-nR&>Xc6`yD8vnxED^`5jERh&9+;y z9#s+xR2dqL9Y;sD7TbkLOHRX)w+ZZR4lBs3HUI+&F9o}7t;FS8_6#@Un`=k$m8t;I zx5wMBa>=tVGfI`i)Ot2lO5mfqN@2>#ryT>umYx%iXpCn4|;as z?vHB*zM{^+kG$a;_!>6wMvJH8zFBABv}0@7yIRn=)?#z|5s=JKmYmMi^s(`=C^pl* zZTdK~Q`p;_>kBLg3*^Fw*P$cTZyNge=Z9ueKcCNzNYyYjYo+|Xd;!K`mJ_Q+YBm#W z08{DB)?%}u>r-%}$Im+3DsfeoJtNHc8iq+NoT2G2x%tx;L1G*4E{xlY$PL1R;_qOG z|Bc26i3_?^vyec34P%O7b$8rkRi1~9wmlT^0b2NjRjXTFqxXZvH%;|eMc_mFMjJ7? z&u3?0|MiZEuJ}}X8nCeGVSEM9A)SI!bsDS*saUJ%CI10S=-2e4Zr7k|B9#c1B&|O;)rY#877KCUEg0%&K4(X?}DDa(EP+-4s zO>ZGvi_;hPi@@(rti|eny?K4h@xlEf)WNT?04vt^6X%}8tMlEsTwA;cUu}m zjHkp^vP1Az+P$6FrJ0d62!aNVC8iWXTWHXFsgAs~b`ZDul)ZtKcm86Pz$!tn9z(xq zFSaypWwl4?h4x|?skb3SY-b$AiYC&|A#hmyfKCq)L&pCw3(M}`)kT6Geh_Gry$8eO z_-c|qVzi;Y?0p_J2nj?N!MaKKh@9B2?-fyj#VdYnYX}X7ydRLMy8DmyJiMxs2jM6~4e_QWK`Q zo@~N$mf!9~*NG z>!C<}aXh|RSb}5@o9dA89a1?H-~GTBvaVsUP|S`ptnsButZ@s)dQF>a(&iepFzqY$ zqR0<)aVR+KH2P7f*xa2FzeSIRiY+4TW7(lfS(2*^G04`vZbMA5vUNA-I6&vv61Fq8 zsqKJ$!y!4&<4jnoS7&i+5Tjc<@qf|nW^~KxrOskHj z6Ki(Uv0cO@@-yArMQkyIDRWv4#Z#nc&)Tw@VKp_4@MDbzWAP2ZVkNBiT!YO^v8qZu zY#=J=*{ds@zXd2lO_ z0qG|?@k0|wjM@2$RwF>1&c+vd1(k!|=K`k}8K;ptC&gB*#2A#Gvh8Z`s`(u{6jI+X zabyr{eQLZ*dF7fdU$d2IwyO?lHfvr)-w6|kxih*%S{?=~dk?D^Ma6LOg?{A|@aeQw zm96KTFW^0L824PW%dPF~MEHR&(h$-NZJ=H(9G`^iDUiy+5mHF~;?N@@CDp4Yr1jj3kJ5>n?U^#YiqC z^Qr2E{&pcK_!y)44_(w@M~ri)g1FVnD+` zV0;yoinT;Z!l_g6sV|Q~rSCvVeokbPG}UaUA=+|CF&9zR$`R}}DA)n_ zC*$6I6c;d*Y0{Ap47Y8K6lop1Ei4sSWGRGh>?yVdF^=~XJNkqsvuUzq2BLBy{EdV7 zGFM%{p_drbY+^DxilfX?;49plXBL=Y)lcXpzT?gWveK$vVl(3`CPyr75FrLOFec$b zIm+Jrok{ydh*9mkB(T8c*|01@y*2^W^YA8fwFOlZaDQ7Yn6I~7DkA{ zK6Xa=9#UE{{FLMNLLjIPqGE3`%(L-u9QJNdz;xQTw`grC#=(*T{iVYJWN&;5(FcX^ zk&mGt^cGwA92k%M&X*&l8i(EVz5yWzKFm;m7^dlO z`t{fIXNIwz#RE3j<8)!97}eq6SZs0ey1?IPh^ur+-uU(2^mvyyI*E$!K(9rLg9BKV zMX&OKEl9IfLfqkyO4x)nqy3}A5CU6qlo;P&@hE)Ot#=GdCJG{n{&^3g#J!}$sU+<6 z`hQ%zv`Jl@P_s+JRE<=(Ch-8IpXk#d?nNfH8Q&e)NALF&UoZ|z;?YQd2xf-Tm->so zO`o8kXNS4uuEeZD7xfpX*p);i-~J;v`iq~lU*cW$#($9vLK69r+O9qta}j_4+62VF zb-_y*%!U_aY8baz@ZL!D0MV~?1I9K4*$xgi%cFz6*o%3o!C?-FQ)AVubjbiQoUEXG z28bQW5&9!EBD3kk0b(aIkG2^I`_^zeWS|&`HZo9bPcGB!fnsYS(ftF(pv3hfk^SB) z&r1E{i(G2|I#Lhg2c!>PWG}B*Kl7@M{z}*o#_d(wVGsnYZ_+7)#MUjARpQZD{V4&f zs=sGezaA%&ZX6_bom~6Y^|D7AY>*3EIi!d(kYRYN9s-q^a7PG%Rp7*z`5ig^O40e4 z)kYc%nHs5OgJ9AwXwoBLp}SmEA;J+SXAmcGX<@OiU!i?SgUH_;XNxLM9j1<_Wm=+3HEDk~!JyEo;X$ygVcK5g0Yrv&fkV6?}E zI(mpc)bEWr)L2~bjbKd9LVU+z$-3An^G2oCFSKqEK%(sexVmlAwVOKn);0hgx3nr7E}ITjJ5F^CJAu1ee@{Y)PI7?`*c zi|UCBJu868O8u)CC2{jWIdOCElM6hRICJ4(qQRIquZr6u-6UCYtJD7>EehJ=$Itcf z?g{v0Rsw2SHg%mK+|`y@*Wu4S%hs%AQ(@*k1T8Mht{%W8XU$c|$0EWO1pa*sZemy6 z!6Ti4X?DjO57v#*;H^(g&Gt~h*=MG)n*!P7gdBGiMJ3{b21VA5*m3%j)q)K(_@cgI z-Q2;t(P2F*XTnKEOYxeHU(-NLAfI4yx?QnuQNyG4PfiMK5N;jqq%%+42m=-6lhV&s za^jYX5w%Sf2eLZMJ{X7A_xkhJsV5=U!&%#Eb-BIqIAgC4z>RcE)kj>MEz;C2ReXZ& z3v}A1z{$ z>gKYm9-7N~Tp1<*!dNmF>nmb}5^o4EP={?0SN3VMizHI8gAvy3b8hE3sj&j#+emsmYM-PCt>C1Zu)G%dT6Mdl)M6ex~ZbW zw4#{6{-5BK$T2~D!n~D%*3B?d$KVKyR9*!W)mX$2u0Y2kU?)TaGdJb?`FGtY^FNp!B?Iv+y zBitFgza*xS!SsulL|^-+K3rt{mkyN?Ch%Xg5`W9d;zy03_FiZ!4?uIxRljGLubv<9UqQA3qNyeH z%rG&e-<$z;Kf=M#DVBv!-|_De^6_6DP@Pf#bx#cMo;Igl2(~~iW%2Ps4=|q1UE{^rUCh^JYqrNnDgxIOw7m*lFgEXFS*jC?-{vSt(B=rlrX@nSNH}+xY zVf;~)6a(JUh1Gqj z(2_Oic~(EF$QSs{zOQ?*NVthFgh86k3_T|&D2bKOa}pgNFShDTX`#S_frfBx};0 zuu-NqhpaskDf8u$%u-vE{KsG-72pp_Wc()RwMgyRaTi6SI6r>_dJ zokormgTys8rDE_{VR4v+k*ry-^!|CyVVx@x}{u`m5r@|ATJTYvOOBc)1Im zH%%M`>Mfimek}gfnWnrhO6F5RK<~j`RG&`&d0iYpvhpIQi$#PCqHZbTM$$BIbBgFK z5`pfUC4LMC(a~>+al}GDenT8dj?%y15XX^MX#8w(GLp;|lgQ`PGzW6AbjBQUj(F8K z@5edf7ou0$WpGSd2Kxyr%R#9ukIsVwA<51wm@j@##A^X`rcHb?G#mDD`8!ZW2M%=_r%m(k5=k8OZZ#?iAM`tjirHD$zC@6|i zq!o=y)Fq-maWM;0C9Y!kQZHyvW4COjrN)Fs^fjQ(=E z2;t2xRMD3hlJz%NiBW=|k(*YFYW}rM%Mi)fg7X<76iIc4=+$;;bF`|Y?_!Kd3#fA* zKk&AdvE%Lp`Pv%Mq4SRo9=ZpFVtaW|L5X`ut;hQ?QKi>jn?`o`8h!2>QOiZ;f8`7* zCWv#7WQ7!+_%K;7MJg`YK3FIEwf_7medO>0Mvs9M2YK%()X9VE#8e(ByQ~*!{0*7E zUOeITV7S+QBnDWHhYKj6xnQx_^oKTCVOoWQ+O+xw*_tKAvflrXJ3|{91)MC$5!kLqx5-OMFi(l zWY!nr2PBKOiJ`d8J-bbeHt)QS5wrdgE+UhPMLRiQyNKka`iI*^IpSxLEQ~69ncYnLUi$c z`L&HD_w)%RVzS0(>t|1hB!TU2SxT*`mv_DqgZLF0e@dh!tU67dFn=VCXpUL2_9yN+ zCq4A-x&Hs~&<&bi$2|>=-yo&kc!I1xB@+1uGNMd$7uAR5urfq0SxzYv@nLyow6GH+ zXdG7Kr#nRMDHG9rx2z}=JtljOc<6*=fPGM`<4+y!!SpY+A%2q*S2}1{QzsRZPI$aG z44WR)rUTX8kd=#KF%H@NO9us0OYa8K{lsagyXYJ?x9LpCcz)`;Q*!EQ@pkxCtk8QY zH%m+M{hb~C>SXp7!%^tJ{ zDg7Ha6Dj>iZL^W)$OSF6Hn#VdbCwG7fCFp?rCFTqL3#+B1^)yxm$S=AE5TYU;wI7` zzcf%J$)m-grg7||QX3lwK`we3Dcvyc<4`ly4RxqV zMMoRue=!!EYNRue!o>~ykoH~StuvqO)V4t62e0tfOKP;OSjJf~>OM$k#~N*4J8Ybt zS1U+wG=78pIb)@bwiC!-S1Z2G<~PvoYF3H-Rj)0n$>w%Ezhd%iE!Fc`#}mraM%x;G z-I|`cO)Y7%1t8zbXdSSUEgbo1Fn|89w%GquFJZ;=p6O-hthdiPrjjwv{``s?;I4tN zojG&n{YD%013Gk2U!WKD2d^iVt1h+H=xWqA=*)=v2X#T}AJiqEN*e{NHm z5M-Je1#O@M3~hln8#)HMxuLs42O7EuwAEN~PnYr{>EFAQ7fJVaDKC=l=TcszjT>k) zGF0%UOSzN^h8vpfqg=|pWPiudWIw)Cxti=LE~Uvn!ADPYsSr?|R6~<}noEVlMg^Z3 zEuh#)pMH?(6Z?%meInZ@-Z?(;-sThUJfC>y`}CUvpMJB~N&Yu7`;B;$K48R{^dTdz zq>mVJC0*iFu_S%MNwHMA)Tu&Ay3DCUN&2i)g_3l+Q-xB{BtsQW6-z4k7c@PUM*1Rj z89Y-0aSzkfWS4JwFN!F0Pqf&1m=Mpa0FZewN!5{ zS`GdToS+btfjVH8G&7Lo>{T!tOay6Q1K11BfL}oPI?nomF<=&01~!A!;2too=PVKo z29v>ha2T8ix4=Un5H>4#4U7b-U~y(^Y%#V#HU_5Yv zTyPXrfk&V@M(J2E42;cEeP9aG|sJDR&G*lTap z^YK>N3dJ~SQrH>&lolL1m~>Skd{wBe86UtQkQk7vq$?X;NYV=i!G zOY}MIv`o?Zqqi9QJ6Q4-9ih~_P+Bb7i{{)a>{A$)x5__QwDuFjud9#VDZ*h@$8Zmd z!7yDdko!Qd?0rhnCedh|u^XM(u+hAhbV=8ufU^$^)d4XA1j!o~ZI`?lt^H00$7p`C zJVHz4>CzmjMViS^M4n8bEH#^O%dyCs$QxO5UZfUddXU7}1NjA{IUUU+w#oCT=7L;n)uPQbVHZ&@ zORQKc#pal-MlI6}xNC-dAxdi>LJ^?I#b4xJlH`OaEwuGQ!#nYYhp4EVjH(xHWOfu* snS#7S|1wGoG~t@ztIk-y`^#nlZh51#*2UzG(w?au7Ok;5iQ1w61E*n%Pyhe` delta 35776 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 diff --git a/bios/version.gen b/bios/version.gen index 552ba6d6..2d252dec 100644 --- a/bios/version.gen +++ b/bios/version.gen @@ -1,6 +1,6 @@ -%define VERSION 6.02 -%define VERSION_STR "6.02" +%define VERSION 6.03 +%define VERSION_STR "6.03" %define VERSION_MAJOR 6 -%define VERSION_MINOR 2 +%define VERSION_MINOR 3 %define YEAR 2013 %define YEAR_STR "2013" diff --git a/bios/version.h b/bios/version.h index 7ead0070..66f4d47a 100644 --- a/bios/version.h +++ b/bios/version.h @@ -1,6 +1,6 @@ -#define VERSION 6.02 -#define VERSION_STR "6.02" +#define VERSION 6.03 +#define VERSION_STR "6.03" #define VERSION_MAJOR 6 -#define VERSION_MINOR 2 +#define VERSION_MINOR 3 #define YEAR 2013 #define YEAR_STR "2013" diff --git a/bios/win32/syslinux.exe b/bios/win32/syslinux.exe index 99b9ba6945ccfa1f52975956d1ac656a43e1bb57..b92471d9fd7105f9f1bb1a29f09f805eb499b8cd 100755 GIT binary patch delta 35094 zcwT(H4O~>k_dkATSlQ)47Znu|1r-$)71DgfXBWvpK?QtDt(1Jq%yyMbT=ar*xvo*D zqh)1jrfH=?f{&pRpqb)RYFS}f-4#+yQ#14a&zUJ^R*2m0jffCP#-9wHcDgMdJ@;An7MWl2VlT zo!QNv$a^Lzm0C?uy15zrQKLqwDjPg@tP07*AKfn@Kyh$BmQkq5OM)b-i_T2rw zT9MS;3%y?Ov_tLY)Z7tIPVvG^#a8`6YTouI=UYfjUcjKP%}IyNBgTi3>AAM0J;?Mt z$I>~zWI=94mW|BI>!|oz8}|&68hQu9h^2@0i$QY+1m+E2@8eD0&K>jNAksN^^@le| zr`%>RE`Bo8S} zYAQ96jFP&45kRwmP|1uLKS`nh6V4Hl*vhv_Z!){!;M>H9IA@DCb0E!yG#}DSkQP9C zxgO7jkY1^mcL+>{v=maB$S;HBgp@Aw%j>mS0ZA6uiUCjXzuAyhL3#sH4y3mr>ZrEMhbotxllGo-DMwnO>^(hf*FA$=x2`foR+JV^PFzJ#==Ufo_uhai0g zsYsL^5m*fAYw6K{rI3zE(pc#mxHt*v45V|Az7quBL%J-ke-ijJq+cNYF7g^AH>7Kj z{)AKw=@v_Sm$Yz7_5R&~^be%_BLAwtM%H=@38pK}?D`hcrrm3g3FfAc z=HCIjZKMs`xP?T}<7Rg9W71}*^cd0Wj}7DKWAd+jOdEf*)*peA7Cu(I^|59<*)t!( z2)g(_T0D`x3$4jHb`XG_*h2isLiQ(8-h7Nf7uIbn=|QHkXSRZZHa%9G##~sO_n7d@ z*g+_6+tcgO;*iILO=1558F91LAA=NCTS1C0Ebe2{!}fGFGmTyB#cgD;v*Ix_zj_9S z`Pj#XyZNzhCqHJV#~xEx&SPTTg7#BjuknQI#*&{?Y7FBoyK0QR32Z_8VWyUzHhdrE z+X8Nkg|$zOd>(W-`$xlxV?Gh+_ZCUg)CNZ03pif~=if}!e+&a058ggd%X$v@% zr3CX%vvk%XN#z%b6u>32O8Xn2AE1)SkWiWpimSd-$M9`vcn`eu6p_CJ0<0-FoHXX2 z00HgiLBYhxj{t!tte2$jqCOl1`g{vGN6b5+U;{L`4qL!$f}kJdFI@I<%!T?*%j1=k;lFJ;u#|Oa}D`O7aPHT5K5$hH5!2SMJtK4NaVMJ zO;y20GehK4LF2!`rn|)q`v(@B1(j5tshI*F=@@jF3kJ~C+i36*Iw(3zAbc_E`$PV3 zE0LNDhEXuWC{S@Lk@ti8AyB_ooTPJ;U^ zm==?fcY%P_U~zGxehM(Ke`@S0nEwapt2Wjd@rR&+hM>XsYBUD*v2WMez)i@P zL0|BS2X9HzB#|EjDq98nwnKC<4>~LYm9-P~7~S-}T4xhF)X%7Avww%0VMP9|sKyjmCiyu8t>8?g+3T9SR1GBho>UUkMD} z`T?DVk-q{X+ybV)Uet$pU?5XB;?>Z;HSFJ$Ym5%sZTYZn#IZ2IA~0f$$S1)7r#5jC zsZ3aT3=|B2kf&zZ3;2I}{e8)ur8dp4o;x!}s2s$i*Q0l&@Uj!W#JcPZ<%gDb2 z0{G3T)7U03(jnmKnu3;aAb}HfQ}|Y0{&|?w z>zPD4T{9&hzzUf2mqq?2bok(GogerX1UfgD)Eeo#;7PSN>l{%W&~Myogu$49i0j{U zwr<^{>V}-F%eMiQnPA;^77aS0XM=nrk)Hz>T_HMcAo6oTGc8Ia>4wN>LjAwv>I6Ci z16b-qq|qXO&;!ARY+9MZP(x@XrcZ=QS#YIsN;dacaSQcTnMY@b#@l z9;52`9d)i41K~25^B9qD2O5|M$B<}|pXY=QO)#hNqTn#7@FvXZuOjaY4a&fZts=h! zMic=fu5m2WK)}oOT(cPnzltFIRDt<7VG4I0Goo8R$y-W5Pq+ahXi@LnhprW3^(e8- zUIP_+!lA`1^2IP>|9|UT>lC2xSWo3Lbg;8t2Wz2&inr?=l@HidP(2$dh4v5HlNyaV zrJlfG9x&*^2`mx;2AAsX-$$UQ*m~<6!}jtw>z2_Tp#KfKmG->3QzRVE?}h745U@tTGe?`fo{{4g3lM%ve{q-+u=JYy$ymJRcrLi+`1B zS4Afn;dnUt%=IzyyFs!Auq-P?{RWtF&5Q6;7~lW8acHNXrN6&SoZdon_qbr6Z)RGzjK%kH}>s&8|4yV9w znke$epniferA|Jl9YEqfSL&9<3YfDPSY`<#|1t>VS8lj!oYR@;>!HJsMST=>a1KJM zGNF+R7{aZARU+6QaeS5P{56bN-^IY2JkQV{+i8*!Ia)9s9P01J@E7m{G5W}E*R0bu`V!fxpg)Bp(V ztdaN{2oMDOcg>u^QkG_%k!l@LTgdyKubZM~KpzF?^npTv&w=4)ScayW0RX+N0*)af zKMh#Uf%(c7Q#1wy@;e9nf6Y3*1S*RFBkUp?JOra0V6AgBVZix^f9gW49-yHOk%ZsW z;VOp?!_P^z%j`6CG`-&D^CmFLsF!aG0`&dVS?3A^K*b~H6KRjHk;gk98DJBUqP{VP z;q{E@Q&_ftj)5JsMuT9)8}8Nl2_FzB=4_n?X9NF@^`1i>NINihV>T=Th%KyMggi1xLp?!JqfrIPBsoOTkmNf1ueL`*JEnEx{HY%N5=dQkB$Q1Mlf-wG`QV1hpq z`F}y>17Vd65c#Dr!t;RVFJSiMhNW1{yauHIVXthbb+%3E)bY1FkN7l zz#M_=1#S|!P2etp`2vdtmI=IQpi{am3aSKF3zWVQiV)~8FhF3Kz;J<40*45U7dT$v z41u!*rg8+MTPg}x3Ct0=N#GWN`2q_CmI*u|@Up-Pfz<+U*9_!@ffj)Qh*5A6A_~F; zMhNUHaEQPdf$;(-6ny#(=|dw6PZ{}Qf#m`(3)BSO7AUc`CkZ3tS%*{Pb+Vp)bc*z0 zS5J}jf_dcx&VgG_8+6+Q?i9F7V7|aYfd>Q@2`m;^Ch&y7a)IXrUKDs)V18dEu z1Xc;G7I<6WJ%JAdN@onr5x7R+dVw1SZW6df;5LCfIf6;-5(W7J3k4n!SR}AmV41)Z z0?P%S6Idbew!jAhea{*gDzGmi#v$>dV2Z$50__6R1+EgfUf>piy96E(SR}AmV41)Z z0?P%S1GM4AMNx2BV1>Y|0;>hy78rBRz>Vh(Ol7XKq=j?mMbV$Ya)IXrUKDs)V1>YY z0xg#e^c5H+Fht-M@S4PvNZSzqgEadSI8sOfc+ngr zM+}DT2@&?3P{c}D^oXB=8$%ocf+7}ypokEH_C@Rf?hO$RP9qQ@FpEKiqh~B4oR8uW zd*BfmFan$dqVowbA-w1X4j%Cp@Pml3o6kao!}dJHzTof?`{DgkK-l$D5g{B|ia3x+ z>4<}2(?=W%8v!E3-K!AcP@aSMG%Pwq2-epFIz3mxYQutYFjt5W18qZ0g4KpN5o{H4 z5-c{v03sD~21Gi5_yX7{*aCq->?&dlBAtM8JQ9~99syfIgs9{qB19#Z5uYSd#d(;2 zGXz9eu>f{{4bcJa1n~~oFd{?&w-LXCxkiMr^#S73&;uMV&0u9FL>=ZD5uy@b#J^## z5o6#yjR?_30Ad3o1tG$TCFDCNT=a*N1QtL@8iojQPdFkRK_U?IVXhH#V6G8!VXhGy zgB5eeaJ1ohm~%upBgY~(g*iurL-=?^IAcvfg!pC(BAgJXJMjVnsu_q7-OoY{ggHlS z1#^xFM-@9_5X?DZYnXFHh;`Eu*TS45LL`@k2&-rn;s-G2h#@fNh;Uq4j|d^>M#MC5 z<(u#V!u&0W3V2#XIIZtQ+yQfs7zT5Xco-Zl7XaoSaW42RL^z!nBf=TC46!TN1Y$R^ z0YncXokQ#nHh>6$|7FB^;L0oT0;5R8DzE`WeOLOflK2tn{|#8@KTLxgk814Mji zdjSyQY!hNnumQv}umQxQU;~J|VZ9^5=^+3Sj=w>O7hwH|;045>p@{v#1`r`;4M&6{ zVFV&X0lg3hf(;--pdN+zIc)xjaBLWX2=R0bBJhnx^aaO-I0V)`BAnYNAT9$N;B*k3 zPsfYlU;~J+fej$SVR;@R#M=uH_W9P6Zo4gkwt3 zMO^=Ih6=%gXPu00Pz;s0OBWL z1BlOoA3%H_Yyfcv*Z^WUk)}lA#aCbhh%>-ONGn!UNfQ0Xexd8}+DxcX51xa+$u8NJi5~j&MWAYP2P@$l(b>mqM8<6I;f+tMFIa=WNeBsN9sef3lM>eO4v7g02jkQB z!S<$PeCZEyMYQ~|f#Z+JB6ZEt4EFLJ63{#xtU}4mfjU)=fNe^#Ny?50_Wm8xjM7)x zo;zeD*~=c@A-R4XQi+s##!eOQ&WDxb+7R}^UDAr&X9w?+KziGQUAjwpG~I@yblIxo zwM^JuRa=$z25WVXbRYHNVz8vlYEZtiR)fFt{+%E`%!&*k?=Q!U-B*=+p%9!-<$tvo z!5)YTFyZA!e!j%>6AFpkN_)9JhsO;=Ih{7b-(CGPUJokc|YDr(?q(LsZ z>`R#9-oNX5Mv*;AUo_BPmGgNM*=X`9Up2ieaMk!$wo>I?_2=Ec(o2=A_{;~%`_HkL z|0SJ)eES;;TasI&@xi3X*ehf7!PPWHpUq+{zZUm^I; zrjl4y=#8%P#!sM#yxV-#PS)lDiEj~uB&F$nLl$`qsl3lqic~Aw2(-@zYK>eNSg)Dtalyq*fp;&So|7>>}v!Cq-A}6Es;2N?Yp!ssa*RN zZQtq)$fHzi7jB_M_Wm`}SWD$|YyYDW&hL%-RYpA&qZ`1R+-~Q8F#EYb8};*y`q}kH z!)I$?Kwa;iTJN8s_q8o>G+677`VV&)^fl^8UsOm}EEwXec?O6~jZpJo-joIh-7pAq48kstQrLi^ z#T|npkyBVR&7Nq355HiqQQDgP%r*dYxYfM=P^*3fd7p+N<@GG^WA4BHMUfh?A1Hmf z4L*EP{gg88$J@0|l)%|aIjo@B%<-UIy42FFy=_<%WaBN|yO%3G>&~MnMniVUgLZU& z4eedLdo2$pLwS7_c6;JJcKcL57k_Vcji$0{G_@1zBXxDnzhSpI$+~J|g!ppbNLg>- zxavM*!d@2U@%lwZea206iu=){XXg;u7eq zD-xB|Zg(f|qQbcg+KM%Kcu;vP^RYqX8DrA5X4N=Q^k=2qLE<)2 z%I#d@SB14#2Wqd1YOl(~6>P6O?o{LxoKrro^Dc%7Yie!`Oq*VX_EA5OkazOAy2z@0Xsajs7_Gn1 zcz=yuxr2>@544))ce!Tyt@#VPi(&nIX=^7=wR;`a>VCu)gvYl$03wHyDlzIFEIW6~y_1^J(GBpfv_b(325_@aoCiy?=*sv0Gl!LBr<&8jJ^fUQ zqT+GVt?;(1*$69*Z1Rr5V#IGXmbHbwZl!IUhA;Fne1^Lz4kH)ch(g_-yuH}vZ(Zem zk9Xyn4EOkrSN-)~Tn^&2M{zt;+S{IiGR(i{b*-$ zn*}zeZG5+IHUEhfC)tR`v;+B$&4G&Ect^n9k5~L`@a|a4+gtNS-p#-=QWSX;Qd&9X zHFl^mZEKybV+D2pT*V_1b{+ZNFYs?ddlBb&UKybkl|kh)k6p5I|GM@ccth(R?m(5l zu50*as&O8$?kRR9k?Y!JDB0zKq_`t1_p72j?0%}unU&)D>jdlCl>{fM>xL<7pO|Wl zxGL(a#g@pT>l%ZiMyd=hL(i66Nv7-CN_M^}9T7;35MfgVAE5=5?LH#mw$gz0^ryZ0 zyo!C6Le*>9d&g@$y>d_M(x9df2u-G?4}!(i3mmO0npA$~%JpXN`9p-XfF1A$GgWi# z+$goyCt)sr;s^2O(62TS6yZLJ`I)yTPo4G*-fl@w8mDES*Y)K`KbizVbqN@}mzEEN zN@=C<91^c-C-Hj1q)a_ER+S%!n>rn}oZ~ozSN-)oEOW_S^YMJrr9@BGCr&U3OJHCl ziPj7K`yG2zSm&*d&T9xD&kRpvsaazv4% z@YF7&6LfKxycb^|i!8deL*ZirJv5XD;i+=}65vod0h-Quh?-1oRl9%iO+j;BsX1g- zCb;B8>~Bs<5X|7~1O?#3%RbJB=c7BSlC^i)FU@J6P#g+Given~Nhwp}sY4^lpl(xu^hp zGj&L)vSJpRYc7sf$?Xe&)A!%wJ~G*rSY3#bnKlJ@qE*>PsJ3d{B{h7fQaPf=RXdf^ zTU+2vsV(Nr)x;`$OVu(!<@~M4e>vx`a{lESzGJQC@!{RE_g7c)%9VCpeJj(A2-in* z;GWF0M(o53r}IM0s=X_Z)R-Kb5Xg`YvA8JUbm6Ip~SYi-fpi)~B9EWCj8S_(^6 zMzIeoBTY5Y$bEwXSh+`D*7cm69I)Y^P9wK}lDG*DX`pRj#R0T!lbyV{G|5N6&>XFJg;4b zwWd&2p2Y?Q(GeCaFYPjpWe3q9OXati^Bl)M3!**yT?A3I=ptAPffU~yv*1J(2}83e zwq0uCw#qiTW1CA}TEK5gy7!cz*htOeRjrQ$PZt~4_N51YTOmfLhkzV`m zAip`8KB&7R$+dsN9qwrr+fKCwxL>g3omxgQ4-R_DPLtWu(v|xRv{P+`+JjP5Wg%|N z_(`92Puvz*h*&cWTDU!-Y_wczsoW!{<(nP-wH4oByKP$L*GAL|BJ|}Vj6Z1H+f70- zFC2zH$v~>b!5=q1%!c+B#}e26B$m*I1}5G-g#G4YzgZG~UkM#4e`();h3t2wrxMBD zNKGs>9J6+|1dH<(TahdAfU!_F0RycSbQ+)RlAq%u9ArgpXftys;IUqdWS85}&SR2G z>b4Is`5NcDRD0zcoT1h6XyVG+ROqGDmVu765MP4Sg1LO@FvJ&JaasE?RDnfxiH#4Y zW1D2)7?(rek$2qqouT#{D-5Q=u%TTHra>(V_k$P0<1#+fE45v{ZpKsb0_GD!Wzv_u z5kiAV4BHt(dy;QiMF^Z;|2}~Cr)?R~T?1{x5x)PJp}&JiaNOyA*sk)E8UNe(Ynme``Uv|X>_ z{W#>SU?n~-`4Tj7YT{J)6)3}6WF3qGHrbDC+ToKL+f~hk+Ac+7xQ284+hLTX0`nfYrxqxc~r9iVC&E-2(h-M30y{$rf>wpo1BMG-`V+ilS-)R$IHWnVyJHSGm%S%_n z--(s6P&@@D>5;LuVolo9P-hZqN}j^0`xkQE<5;aYr*f?E7-=EWe+%LjqJ`B47cSY( zn|W~QN^F|sPJ&%GQ3MX86z4oBmU|%Og7U2^ZyT<8IsQIqXGExJz%rA=Cs0kYDF3LY zP;DS9YEN5{w(K&<74c>Xw%++Pfqhd&&wR)lcc9G!aFnI|d#%c5%hRfL zxLD+m%?Ed&kz^KoxdXM4m8_rxoojxn7#n7@&K>D;@*&&Nk-k7Cv8J8qYnCwdria_a zuyvhiu=(;4B)rQGbfOX6eZ4Wbm|pl$uWVQ%V-8$@)ZT}1RJEXq7h5JD9XD26#@lRQ zfnhY*iBy&5{|EJi$u%M7lbk+&B$2W?nQ|ESl-$c`NWHR)G?QFmR-;z96|{`h4$EpbRSYow1NLuY7R8*qwxu-R9G{3 z_i|i%7x+WO5-!1=-Du)3YOC|G4AoS5&Lt=8Gg`1MooS!Qp+HmFQhN!X^@x$4;f=F) z^Zj7vy~$IbIf^P>RfMvC%zV4h_TdBh@{icVPZ!e*j5Y1rkA2vEwP^*sJQZQTg-z~4 zdpRj@-Wr5A+G!8=)I@4xCe{5K2Jz-crWDxZ0h=h@ZjB1G`&joB>A6^5`8yCo&P=&Q=pinKJ(z%QG+Ic)AW3V25&mo(Ik)4ZXH6RMvo93 z|3aS)#{$qT-_^!xr#R8I;Y6~2UJjw>+Xdq3^f)b_SDk{Yv9pH3&Ka+@7QV>n1g0iQ zdxH~wGMvYC=amxqKeDV7MB~1&zpyspw6Ajjr$_<{S8S-CIzH4_9T95LP8IS&k4w-3 zIl+@akToLI!v#q>&9_Z$G7KrkVYcppGOp-JTuspC_k-Am)N8XB_jaRMX#HmFd^oj^ z{FKv|4FfUHgKPs-e>{Mwn?U`JCIfNxmh}-tA7;2V=*|6P2ChR1a9kFs=eM&_s?MCd(bDJ45~jC%&0r?uPcry zDqes%zScu&lC1Z)zX~S-=v8~49qIuw%MA8Y584voUJtsj|Id4I5cdb6RY#yzd*vH1 zCY11sD^Q``0W&_WVc~9GcmfNDvZ@F=#rza6nZd?H(o7P@&PUSJ0V4{rY}!CPC*y{o zKLG*m19TE|JhXP7^2pUN#vEfG3ep<$CgB5F))Ul4%&d7&@ONVhuy9Tk@`>PDP}DFO zT#7o%l%lBNIBb}o6mhnZY5R&rC*`k~)E+yk4w8Nu(2&_+Fhh#uDbkd`l^8+(wy zchqAh{_8ew;>k^o^UHBg_1gfHVjer!lfKwDo)^s>z(cSLV3@E(&AUKA-%#bg)_Ny8 zvuWsEi~%NS!Ms6#_G&L0O1@(6^`d?I?*9_YzUvRYr&;tq+Pdv}y(NwgbOWcz?~jXA zjerQT8QunCjh>`mm`~?pT@@>R5)`#ztFG7IIKYdjynbsx^dj2qZS`1>(_Z3r*-(e~ zdlfkXErphM7V;?^v;3-~rtuGAxv~t7<|5HAz^>Dj*^*2zRpq!SE>oM9VTkA^)s$0!TwgZXF z;g_Vw`SL@n3}miU0=tr#F$6gm+@93+5=o5A|^p{@H5;BAxo{?D1W8#a$8N;%#W zsQ3tG**uLOiPX4i6^a_NoIbRT`PVP7{X_O;A1b%YDT9sjN=nZ7K16B>>G$45Iu0qJ z7m@lv3hKos^@W3IuYy@KB?xJEv#KZ>NcJ%EK-y-+VsIlQ+BAv#;~G;LrzP^% z3!Zpv2~7N`ZfgT=_TW^b*zAEcsF7BJ2iCk^U@l48{es+qlz3SF+l~|gJ=n$})IoNz zCPQhwxyN?VY$%=3uGM=yQni$rLM8d&7I1mQ5vpcxf{SdwEdNk#3Hx;@?cVj9cXizh z=qg98;#8wXj zweDh{4x@uReDpC&QWS2)&)-3FKP~)SLm)W*G{l%WoHZU!pCXh^9!|%$xw;iw=v|Gw zF7h#5xr_JXjV-bX`(`)|a(=>Tz6Kgs;_b*|S|)H*<8Ehr$;U!u_ssNvtcx33_Z+hx zTIF*alvYV2k6AxDa<<~m;Sjq?ITBek(OBzX@zXe~CBRC1X#>~2_VO-tVJ|?Dy4(n> z@k`XmqFS%%<*#+-%|@`7M$mvDQ>if^*Z9z;d-?fQ)5nK~#n{bSAlp2GZZePl2+3!& zQ8qXn#Ih6{ZP(6VjUOuUh^Y2%rLT5l3wMuQ*e5nRmQ=9+Y;?SH2rr!68DCUWPPxLp z`(3xUN+0Cy@Giv9$Fy&lu18xBMeEvOxT?IO+%udKk2*Yf<2KkBJmrPRJFXogz>Eg; z3bhYN-*3ZU$KE(w#4G{`!GQ#g_0lqyeQQ6p(Uhq7FduUg2LlOqD7PMmaDE$OQxX$KO|-XBR@ zjfnR)9$_eQEC!UtQQnTm#;9X}7k~4l(!+YFNb85JKZHaq zOrHl;XPK;rY*I#%-J-37YFlM>;fqMCyoJwRuz&pL)-YMP zY>2Pxix@DWy)Ez?aHaItN3em_SVNfh$T2MXJ4B39E_DGTnOkU_f zqze3nkPsq;hOpjG(H>+sOL+0S+G4{g7uFH4rJYl`k(46$8x<1YpP zW69kbE=oQ5L)9j{k6`Oc{Hd7c>C47R_U2jTaz#bdbO)@54><#GyAf$Pt(3cXTGrzxBbRC#?mfiA4`aZ6Ll7oV`)6;!_LLh zuFZU)i5gcvG+uX{s2rJ|_A6{6cbR`2jUXk=7Dqd@-$eN>zh4tn+vS*erCLq9sJECf z$(=>H(t&;%bH&ka&Uh%uN}Aw~;h5|m!f~R}BH7}OfV?_>rA59UxyXA+zp`b2xm)AI zhM&70$c_C8%^9;8Pr`+|CN~E*g{-7__gB0e`xsB$U+_#no|D`k8I-d)WrBMh zuS_tzU2u_YyP6gKbhho+tms(xW-zua+pq3-*n%-MAab>Y^L$3W79rpFTD*8}w68Zg zq9pn1qb&}HD#OV|AK;fZEk#KhJ@<^iDi2|WV`%G^i&pFUz6fKv&B5yd#`RQoeGF_F z!jw?6QQxhe-hkO%>sKZ14%c7JWt}uC(*X%|~+O7>e z`J1$3`a5*5+-jFv@)Kw;^LCyoW;cK=Ad_b{wI=)}BOI3Gn2#Gm=vX?ABr=e+YYStv z80Z_D$4?9!{loT+r5(vUc4aILXuY17F%B74-xCW~x7o0v$0ztp+Ux;z(dtnK@nOpl<&oxjmiUp#?G+M<~<@m85Jya1LsnFf2; zPS;Cp8RQ3kp1~)i!(M#jP0Y$WMp>8oWv?4$J?fXe!oHtOL&z8G-^nzpbF&Ptn$X(q z(jOG8O~ZCeLwnT??@u;;3JvUhM*iPU4$1%9$tP^{6gq{(t$T*X^z(lmSt3<_Xs>!o ztJbcq;5YDA_&~!op-I<5GB^!&wga8n^hKYNghtf;evYAu)Tn@U@^b}Z-G>50+}Fr@2JBi%%H zdn!HIJv+Tlgy{MrybKjOn3}va)MBZW`SktBs;AMm=Jaedf_GTJbh?;)%W|f}GWwbo zPN&g+xe8W&)(9O4tc;gfqi5-x^uHDCgJ)@rR#!pDtW5mHH?S1{%2u!r{0u{Ro1J}@ zK4D&!h0Q-^zR%H-1HC}ycs5hYwTIAfq^w&U7a$tG37Kg5VTj`(UoyX};I_IvDinox ztl{eeq2wSox~C)OHacyt+nOw5!;a z?VM|5xONFIOXajG$nb|F5b)w;0ZGiW<{x;~cx&&5fMZ@>wF;(OE679@ zoMBgHfE)E>FU$lt`pJ^V+-N_RKNCDxIs0)YtgRmG;Y>Qw`K29iUZcGNji0uaXAhQf zliyIA;p)z|bEos9D`y|bHnXYrSau^nB zALTDtqnWSb5X38BV(S4cXATWuIdiEu`GvhR7r4K|_RWPeaGzyZKbAc^kA|Yj%%g2-<{~zK zJ`HAN^XMY;xHKe~&ulLOK~py8MKG<+Ec->ezR^odu_~MJz5F!WJ)1W5`Mh=%J=o~^ z&`(jpi}R^3F$cVc#64O1OLQ9?wmUDN%K>&Qpo4v@VFrG#cyEy}J{h~S0D>rs=6Ds! za~?{_`#k=fH9prUNHv94 zHZR0U)w*FfGV+JOWCa*ev88rV$yMRnkyMoV$Nxa)ua)mI&p4>^JDw<|F>qMFsaz|> zpQzI=%+vKd(P6~l7SCPe;_!NGEZS?Sp2%n2e{Al{w4L)R-oK6t-R*O0M~UnOJIc_M zQuzTCev+7#D?z?Q_JzM5E)|d5FhZl7MC?Ycz%#m|Rm$@H<#3hwiNo)Xd=bm+W;l{z zL|Qlusr$SPL;D*2N&-G`US^W)i}^2>M>5}q)bcd;8%nMiG@L)Tb|`i$ zs2!w(lde*F_vcDyHXlxwDU?t0U?nNUx<@__MMIS6pt?#^Xon(Tb-03B_o$b=CH8P3 zeVSI!Vo$$9TLq>rLWSr4%Z)AZfD%`v+AK<`Vk>0nuTcM%_cP8o%#lUzPW%m#v_d5< zzhCL%>&iX$=_|BdU#_m;Im4`bY=v;vEYckZ@af$H^wq`q%^berq1uYApWE`aZZGj- zu+_I%+eOrW!1dX>K5bIunY)XEl*Db>afMlNRVB7RX_n2c9A17!!WU*w9lk+z$1dHm zQ?(sX6N@wj8cm$U<}achopM?+98{aaX6Le%f#+!mGaq>dOth^Umv8-iv@gC^c0lu- z1sxxOe!Z1a)lsa*9l*D_4uD+RYcJsK-vdhdqc0lDRk2zF2dXCIetp&WDu+Qe5EY<` zirW<8ZJ^HgU<7wFjyWvyN!@Mbib^b067$(S2Mw!H(eOuA z?oT-8pcHibj}O?QZGVLyd+x!2ZB=*&4aVWCBvy~r9TwOVX1;)Zf^vtzmJb`sKWbVP z>?-Yknt>Y|e(u>pjjOhPKE@Z{sjz4zvvuQrwASp&#k9SDch3GPWDgNX*|!i%{Lbbr zri;4Y@1E9h4*z_2 z&9_)tKHYd!U-OpKIPL69$l>~J@Id%Gr`mh7cyQ1_8Ddf-<8=}3b53*owj@rn2BqDg z3|3}YFqBo;gC(?c*Xf-0wHn$oS6sC#u}U*d=P#u-0aH@rs`wfB0~Y@p?cUtX8?=K4 zt~ARWNndQz`)IC$HLpP+5^(NCti16TuLM>JM)d@CY$l4RAb&eYYlj51hF}d4 z$oGijr(IODJW{iS*HB}<-Mwf$`O7hu*YmvBWj7_(br}sLQ&{ve+NnhVFYS4=R+oIg z{g!1cqg|cf&Be-_)%Cx3w%la6a1b- z!-I8h_fJl6$<^G7TCpT2jp_Qw9Bf3ZA05iZXZTF}@tZ&{+0TccfsZ-qiqQVNLE;TV z_zS>#5{UQ+_Ivm+#!e$vX=EIq&__v-w-TEGM7Vh$T|bsx4n%V9^(t z^avf#6T0S{Xgmo|%U4I56x%M3k(L<6wo|kl%KTQ)W@gt(RJDzTub>~8dBw7+tnmu! zZ{EpkR4WHcgF(-9iIRhG)Rpfw1@t`ob*Ua?KRpvW4DT zUu4o3SzL1HDU^9*5+AtBc6E-2>RO6=gB?B^q@U`>Z$n(szV2uBS^?q=Hi6J9=nfRP z060CxIgMq(nRIqLPIh!MCu^lUDs)Go?l`AAF1qCToUW98l1XDdIb9-qkO^Mnb6zoy zwOL7@AQdcOC2i61$5S<(;&JUBOrmyv66e~uW(>*NuWa>7y0hKy;|#lPE2Q)ULWl&= zohrPZ2guc+EFSICYr}M$KEJulEF|RB- zr^SyGYS|s&#xw{&d0{L&izawV$ZP?-l11B_U*@e+n2$m`wdNHqC)B($yis>-0jIy7 zleA-F6xz8BCpnueW~L8%(#4?9gPi6Ewoah~T5y^r28~~GlKv&WEvqR^Q{XK06tiU0 zL1YOVnN5QmU4vm)R;jjfH5KoQ*t2On%Z+KcY`uSD?`6~BWE%S=n|35&%uA)Mn)^=R zugW^UQb${0_F)g*rQJ(r{Z$$?_4pX0&IK`__RIv-$u^Yamqac}Gu=@Pk(5i0K8>oGVaO;FqnrjUEUvtakiteDz8D?lH?+*B8Rbjm39CzzE^3Nfbe8Kd)CYl zR4&AJaS&zZYin81DjMBZ3Hl9yp;zoN{-LVa{ ztUET1b;Uf~|JT+3p6 zU9?rBDT#)Gd8@W+?PvCji-ra`Ipy0(X~S4kiQ5HHpEjJeSxqB+nv6z0>;#R>ViQ-x zv755@SJReHOh~{Gu5P=piTxI6d6SXf$qM9`qa?0U;pceUc1iA#c#0Q4QlT zj-D_P&UcL>&n!<{vt74JR(9m>_ex?0bQU)r7jQ=A8EfXtJSKlvzEA7{);$LT53o1h zfYa}6);EW?9<+bVBXU4U(Pk3%-|uG#JMae;v`ewN@rvJIBY!NG?;>8X#~xz2IW(&C zo{8Av^iPs_-65{ZCHv!dd9&hc+|&`Aq0a1H4jmE9tE@&<0Bkq9qY7dVmt4+gsyUnd zCJiI7?Y>Fl8!jD(53G%jVR5|)(Zt|_CU4PQWc1M_?DeM~YIbCcwltx3M+RMv)jr@9 z2Yx`g#1FVAe?V~jq`@!lDLxQie9>Sx^IJooFb_`>A<7!sI$~4|SVqOaG4?b#r-#Jg z(LX&ZRB{BnI=Z2A@%f9?hANiK4BSDa&+}ApK<60;c zuU%V!7`QHa8pGbmqD&nl87tm=nX--snHzGpVa&M>_VkNv!#WyCRok+oJM&@sHuqG zo&_^wv=cecb~4(Q$m}Ge?fR`9i+%69@aT}f7v0)h*Ber-I9R>=6b^$uyN)*XO3+4f z2G23udWdviX6fr`+m_3#@Bps;n1EIHzT<0UElw=UUr&2D>t51ceqV?Ec5xe*-1i)G zJ37XQnac5-aXAdujvL?YcjXQ`gTBmHYpnAatFd-&I85RxUA`|Z_EbtMDIAV+hYO;r zhn#3cwx4`FB>n#L_9vV^DW$e8|LN)XpRM#yc>%5;!u3ph7#4%M-Jfr79eE7St@B6V z7m>Ctm5s2*WUcf>l%(vHHwix9T(7RA_>|eUCPiK8N%4OgXWN>+vN1lKwrx_^h2vA{ zmH2EL;xTr518wSDJsop#=_$((JtTNX2qQ#3+VLZe(SB#f(Z-;sXbi)0m*6`QX=`F; zEF5R|F0pNrK!&XnQRB9xD68)id{Dk#a+peN>rE-k)3#E&$eMY^?vtrIn#%Wed!tG( zxU}p8RrPT#2_Q&gqKlekCvK8|A$PwINqilP*z&h&D`%W<$q1sufHr2wZIZ8$thiO_ z|B#kN9q?1<26&$V96B$7F)yFFMv`vo%WZ4W{1jW(@|iHtUXmV{rRCvzv*l}(V-R6K zgS}xB+U-S8a9YP;PCfAsg>C&1@brgg=6I>FQDiz(`R#)oa#)EwfKm~!Un<~fDwNzd6bf>QGYap868Z4UIk3gV^6ZCxKz|kwEeEI!`as3Aid~fPnQW4k?!P! z?6e#v6!g8QW*v048J4l50b0gdTnFX&izJy#4f`LX#+xFG)KTD9R%ITuH&sXZx?mdb zUTRzBVOyn+HC6r!RGk&uD(p@ti@OQN#p9XJGv9#sA^3R^g6eP%jECS?LEx z8-ZDg@! z8ow{Jtx;^-WEikLDLw7^*Cp%PBi21f)VTDFGY$_mZoMlJ;+ZTpZA~&jvT;<2$Irv| z@c9XVfz_zVBu2B+groTj)wJUQ`haa+ZEMI%e_V`do7m`gX|QwJ|Fr&exY4=?Z{6-J zv>uPY*J9fRmaRK-l$&bePVK@#5vW;AJW!kCq5Om8V{BqjSNS_Ho7BXd&Zj*Rce-r( zb4*&KO|&Y(+QdyB&cvN)a&f+@ElbM)p3|^)yN983u=+-ZW$*LTC$U7Hi&S zue?WJ3gil~4Kox_%8v_isDP^b?7@39klq>20^X-HsXl-?-=~4(754V~^to=E2I5*= z)SwUnT;FA(%7CE;r`!Al{St7}&PTD%n`p3QtA#FZj5}TYCYsuJ1avtS1-rygwY%o{ zak)0)bFBVCX8gY%s$(orDj)IF7Y9IH+PV*Db0_br@sJvOTaMkF8Gunbuem$8re+=1 z6xP;&`oNXjTWRNODYhZSI-t;&!=FljZC`EG8LWB@N|PdwK}e40gKkmCY5?!$Eg+nV zM;Dje5c2M*d%F0zs#Nmjo@AFce<&JZzV;o*Lha;GR{jC?Cu!`r4`|q+mxk8=&IZGu z7#{w7D?UUh#Q#-+=8pQGJ79P_rv-cZL)wRY!sHL>0J52V^&xFd;@OWM(#|bnKp-Wt zVt}LCy5e=B?y_qJ^>x0;W&2$*~oaJq%qe)jrx6p}R*d#t#yFZZ4*h0Hn zKOJD)Y_jy`9WHxPt~-vA$;h z{IvnB(@q)#Bnx&z=oVhEaVPzmbmu&(4{HJV&VY4~rkdXDnXw}re`e}0>z+G3GxEZl zf^FGDeesfQ{|w@|aCRDDHv8u@+P5Q)U#ZZ}_28O{HpX6|nYv-n2BWvPft)8x{+x!= zE4>QRKBu!Od9C1&-PD`3RKxLyYvg;>5r8j_sKX*u-%z!Qc9ePN(I3f@0xb_@Cg)h> zmo%Wsx$l75nsQh(LxgVKli_i$VDgu=6Qw^t!7>Wy-T#AbYa#ue((~Qf>iu*aX!e)= z^h5e%H@5Nsm3@!419~t1?)WU$>>wRVvI>$9(o#Z(v*54jdeW?*@GI(1iNwA=Og|(I z*@7c9j#$~DBXle|z#1Q=lgP7d-cdRoNsiJavYmw%LoSA87SosL#lV6)#q?9!^4xjw z3VH_rohR!a83n~`mKSSWMw=C!E(N8KoPx_`bUUG!gW2oH=~E~6qkCA zk!v(+@>AZhTn-P;grenWd`AltLnP^_7Rk#yK{@}q&(25GmmQx=K?SPD+9~5wFT?1(Z2}2@E==MMW3aoZm}Cxv;&D_&Hkjb$$aMg zlMZe6!2@h^V7Y`JVeG?qUA0Sh*!e%{izJv0zfLpAFjjV*-Xe|Jfg8A`-C!4Q(0Kn< zKZDL1tG28EUt8w`6xDIZ@!hv~gcBm1qM`;kQ7e)dv5DiKD8U%CiT{#lCpOWJHqi-_cIOjkEY2{ zbYFlL*>p>8zHKaxDaT5l>~jT^q6^xaMmQO3OZ}eag0Y4U8P{y2@$t zD2=*6zi&auFtu*-EQd9;&XEJ#jAx9_%W`&`v4r=K$J*fGaCx8|t^9)Q*I^_fnbLvN zVy3yJ1I>;vk^Ao(SCMRcfJVGlHa#$A@lRy(L!4iAX6{4dH0Kx1SN+B!&O2mHr%}Zt z_AU|*9{T1bf9DN*qfO>;@e&_q9^qmJ53jiZt7B+OK{I_*Pl)~8BkP5j9X9P-zx4&A zmd1&4tWCIig{-lO3jT)qmR)?q`5>A6m^g#6sz<2E2itaQFPj=F+TmM-+ETpJ#Z;P-O>#w?xE=e_aSwYBFV2C zVe}|3LoUOcjc>k`1upSx<5I0`K;C@l60yBy^eB;JP8uZ=xtTRu+)SMCmp2$ITFtr^ zI;@xt-1>E^qI@-n&t|0bt0tvL>73uD({iM?;sHI~^9ngj13Q5S>;QFToPCD$b8rg$ z6UYkAE+DN3C3y3HkX{A1z&-G=kXr{KJSue}rH`gKJn8_VkinknujkDA^USu&rOm zSq;{`UBnIrY=8B*Ir~cOpeSJcJM#a~I}O;5BHy5P+`w`>>B%swNB)v!OX;#TdLG>| z)ocr`7qpLd%F{u+JAXQwkriE@blF0Y@1eZ|F0w@<9}jYKf3hX~pY=wpf3#-C6>v5_ zXdiAeCKf!p<4#mpDr_fDo}3r3Q9Gc1fZ75r)E=ywC{&HAL^n2S8+4IF?SmR2wGV2P z)JCk|$_*@NR>KzxyG%(F>)cdrK$)g3X!{NN31}e?xOsz^-Ub_Uq7ww%^j4?02Arwzp|b_J>|I z%OBa9Pid+WJG5QvFz68ORv9NUkLiLw(4kt#Ks&S^2;EKVq0nJk4~KT?9gp;>S|mNj zr)rV(c%Q08(i42D7U|$p-8w@BFZ)!LQo(es$v)Gks+a7qYfbhe`KqePKF6mt+2;r8 z1wIu5S|?3wvS;{IINVf_sXd_B$e?ym8Wj7jL2Y7tP`t~7;{9<@ymto0yE3TV>1v~&@n>p(X zMuHc?>mVJx56VF;_!hL#dL{50{1$jYH8>9L0f(eHdn9M0z$~x;tN|Z^-QXm+52F9T z*#s~ftOV=8HgE#m1okbQ#evCSG1vkQg0H~$pcxnln+uEuuYfd=SK13l46z@43C@AW zQoga+*x;tv-$#DnN7yi!3w)pgd;!jZJD?lJ?F29l{H9E`fh9-_HP>2Ie_inj>sqe0 z+Sv;sIBhFc{;A5J+gTNRk_9ipdmMPZxdU!4)FhJ_mV^d1?i2SVa1B z{mkT*;*WgaDlsgKKVv?fCkl;T|}{Kv`o}T{12s@M^69% delta 35343 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 z z4r_CnYNyS5|M~)+$sSfpo_yO7)jh|K>W+U{SKVCAdF%%}ZSFg>RgWlZmzDp_u1{mw2`B83VQ9QRb6zE zlR4QbXMN2dl0S>z-8v(a{D5&+En{LW<0qVP=Ck_K^e0ENgZAt~>{AR|zMKwsoZ_sH zW?(Pkok{&rf+{U|F8}&><2U@3gc)_~$xhI&y@VBnV{2Mbcj$ z(Z1w7AK#P2W>x3R&^cQwvyBi#1}O1t(5tjV=Y^a(xth7y8CU5{tk42x@OM`lf>o(; z6?~t&n`OUByESgY3p~Cn;q$Gzl6#54-B)`z|I(`vmIYm3fW)uwa3WMSRwvJ9-l?>? z*KSVT$U3LeFcQe7q|$a?2|RBAQ&M3w_&Gb73e(&*AM;9X>oUOto&fsgFS>9+zM8K0 z87*iKe_==Kfef^oA$K}H11I)hc2OO(Vufx-C}3cX!FD{lq7FP z_13_A4yXJSoGrY}@=1LB+Q7~N8CA|`&PedaTKgh%3^2Qf=4 zp}dndRgXsQtCR5+!V+Y2+BK*A0^5>KgFHFwHFh)|c2h1^noe6Mt-yEKGx7Bg)%sI^ zYo0k{0^iGUR%JS`wW(^&b1yWy7aH7Q?tT1Kk=G~ky_1@nr;acv)?FSWj4_IJhbT9e z#jm1)UT>U3RVT9ftLO(_obcK-Hg**a@Y=;GZ?f((P43Pqfzzrx@EvyG@-D)Fs&fVEEwNBb z0_mr@@V8B!(Iyvox@rNY>eV!ZRzY{5z=cp#9Ixp)Ha(NhY0cTboy^&qyX|Fedx6`2 z$!#xn%CB&~E9^!ljrHVwvslDx@EUtL;dwS~HSIwv*&C~AlXh3nS2vn@-<(l}Z-V|l ziP!31-G^lDE<3lH?r42KLATphLdwR#D4*jd_dA{l$)0TU8aj@=$^KeH!#Z)E6%+Y1 zdJDfQv9)pcaKB=3zhYG0n!!8Uq68&c%0_0P3u$;>D0OcovMX~4?T zSSy9L@v`$$i`giJwr{}+9Vb-3S-jb8&jqKynX~j@uPd};2xqyLEJmg;deSAJ&tsgY zoLyGvz$Tn$t0HcOI+(0wYarF&A#}UELbaBtOHJBMmbaF+ zHoB+dwEg2c`(-U1PF`ZIRoag9V4eD2Mq= zysxqiP8!jE@K_$8Jh_06)hec-zP`Q6J!pxxk^SwY%^S>5)D6r>wN`3>vDU9qOVI0_ zb1`yS3lxZ8<90#JrzNmyuhB5y)}v7mJ3u2#+1szdPPrlb^)=eG$Lz5f&DAXT+0}u= zLhZz4tnafjtS?(hT&KikVSQ^@r`Kt3GM3GFo%W1q5eL;CpD;1=qP;=*#q`wmpSsPG znH_)dgOZp5jZGbo6F38(RlbadY<(9WqXwDxA8uC2&c6oHHr0Wn3l zN!WhiuM+=VYDsg&y7jmDhUn?ZBl8Zrt_?h&`P0B|cK^*gJ2~4g{9nH)wqQbqV-LTW=U9 z*P9ScjL9GOCf!9wf18A@9{jO-MK)^d#@4LJpv!UEZqBjsN0dwa{)_S_1j@bj`lgQL z9Wmic1IJkWdfLM)AxVTN>uHOyNikp@A(LgkAU{wz_wf z*t>Vw<@I!?-r24|r%4C)8@vJf7jlIEP1YO9bih z#lZy5Isog*!KEo}xuu8QXwEOxt^=R;{uup5KCLt7YY2QBwN0_^K=zxDG}Mf8!@UIZ1mx8s}|5|EfhTBEhNa-%clLiXRWf@HLxCZ4`93 z)?Tx#;}c~(HnH$~&@B&6^jAPvjuK7vpDWFkAV^UjYVDfgTqqK6VjF=OYF#}F!(QB< zU?gM4Gm_04Xs}lcUaf(BxdGO6jeWm?hLa7Jk z`+qbJ+g^9&$u8Xx&DvVjcBxOS*kpY^61%}Z*gzY3kJXZS1%p}UMu>FNS>Z<7s*zl= zLW3X~@~>RhCrUPZxRG{u)V_(G{?H98?UE3u9B~O6oEf7>OMCEZbGZwcoam zDMb$JmVe!851%a$NGY;zc?`F+Y#s0xOzz=}wift}hqgQlzpAuuDQ|!jgSp%j5qIpb z-Nv)?)f68zTi2(kt34?`FR*^NcC|k~pSI?z8@k|w>D6J#l8LL<+SR={X^pzNA9Voj z=nSN#rlq7GeN6DU3L{3YgXc!*I@slfI*8?-13K&4g6~A6u8*1dN`lSjlr>iZc|Meg znz|)LIr0PE>PBtLZ98kPIY1V_DYK z5u|CMVqKR$YaM=2oo-#nKk2ou1K*$aH)-ltQrD-?S}#er-Rai#XsK#qwwjvN@gdj& zse+XfTOxF^xd=J~MKeyDGx1+f)7IgnEy{Eh+LD}chn2Y8xqh?p>luh7^!IM(N9x~} z6xsv9@xKWnp-}umS2s_J%}HO16$wfLbk6VH8BR)^$w`;U#!(mZ8|FZ z{h?@Cxs~tZFj+T4h4QT2N-;Qlb>2YLn(JZR5$}}KFQNxOJOn@H!2WpCC0_Ha*&d2D zEiHAmWN)9InvLpNTy5enTlL}nvK|ia+i2qW{g|4$LO1PEYP=!5P<_Uj={Rj`s4h1- zVGJJp+Nz2atK$sie*#NK&^or|CQG`CT7yNcb9t@%u-1M5Vn5bN!XVsavE|fiKd`zm zOiGk@BBiTDQfORJGoI zL%q#K{eppkGfmv6TzK$3#4~fL_I$MXYUw0?m}p(EShvZb65B{;;9}tBE@_ z-@zhS!w({{a~@D3(XW$1oNZ(C{BN z<9*tUc8X#v-lwx#^o-#3*vedOP|I-}v5TAaE`GuuzfYg*nmY);saagF00I2rPeQ%1 zL-pG4@s0H&s9p0O#GG4bOXG(|y2KwBz`QMVDOt+8en6W!z8N4y#(&>X9b<&}RzB|M zUJ``IGy{Y-@l6xeVc;*Sh<2=z)%KW)ZFol1P&(I8HX)^AU^NBQ39jANT=TBs*x^8y zGr*$lgFoc~+N~kgw981^3Ast(ry)+qO~bRbt(*eBX}Fzn%KngcJy+#+SATVc(HF9R zI26q_PxBe(=3h(FVgD718z5-f%|?DmI}F}B^od9{L0b}otLe0F#0Llk_^%vjEe8G9 zDH)#ljAA=Kqgk9Q7hmmWnNiH2trn8h>I?)@8#3yUr2D9Q^+PU4;f%=K9 z%@?-h+KI^jVWW|xU1d!_qG67K1NiX?-{|i6u%vpn~uk5d%Vbs1%jT#uk3-mdoZ)lYB;`HxsZyp3UY6by~+irrElgFxw z6?lNge*B1rbdq?vKTqrBoN@P@iIv*NdZ_?4?%rI(SY6UR`E5R?qdbVpUiy^woBie` z3?WTGNa&+~Y1#K6uE&tkum?Z119xg`0?EAtk+VQ4fz3>#f`7n7%E2F$DEJW&8|Z$r z-~U9SIKO=b{dVI~)gSrh&uDW(&a=+jX?L=bP2NtshD5<;b6EOA{!sjfl<{gptf>B0owQ#&RE$!l z8N;{=qjjZ}Y5lt5IuB~Gg+OWmJG7HpXkhRBt2^l&N_OUt+CzOv(=WT=&+*7r)E>k? z{TLR8AAvN~91E(HrySF~VBcWgpW#uO|K&c~p3+7= znU+r<{2zQi2k0M^dUt1c4$%bAZuDXLA@%RZZXBkv=|OAY_vY`WZ)VGm(4k~q{-GnZ zh>#^r{*rDaBlCj`X#gd?Som@JAsNap9j9?*IBR`^jw6-Keu7RSZ?TdSbOy4Vq)D*f z%Q^|E70h*#zC=yU^Cx{pKc{}B-+^CpXYe1dGVhm5^P3dI=8&w}$@ zoTa}J(x1hiqkYHRZivQL@DOdVUIBg>UFX4Jf|eZ2=N&l}`Nw{wTk4S``OjUYvpi@I zPj>n`)ksPHp5LiI@hUCFcNXIF&-_6XC@EnfF8VvU&kQ$cEJ!f+25kf|>jsTzn(70+ zIyNK|7Nm4E&JzWRp^|h$o5c>^puz3hNZ4r~AS)&2oyW9a?mXrn5Bc)^I~ka-oz8!B zgWe(3_c5!ipwCi|do1B5Z3~;9WjE;@@*%r+lMW61?$Ki?ayVVW≺~+qPQ$2dw`s zx_~6GPj1l+63x2&Mehts1AzeCrNn{4S_%19#fyGP$8`Rt2(bSwRTZJi5HRM#2D&$(w8SwL9>5;Y2lIDij) zBvqsBgan^ct&URTSjO12rp6Z$dBtj$7$3NVtB86Ol^8otjbM!Rad9dmsis(iRjX7@ zeP9yBL}Psm6_)p&o5{QFd=YX4lI1 z8jJxjdm8Xoc-?AhFd{jBM|OK^+<*~{##ru^;~R|>*PdFOFdH5;H_OUU(N!L6G@|&I z*0+tuY0j@%2YkjX&YRXpirqZyK(%o3z|~iL$k&@gfCEQe4ZzhLqtEA1tB68E&gYS zm|&o(k)dKTnwlOeM)EzfJXE}f);$dsK5E_nI*LVTos}6TZg5^=rFIfCc(25Jczbhlfu@3Z?YbM9K#BE%fQcU$ATiX;R3ZFZy9G|9Ik#VCGFeikW~ z4gBIuO2M*;bUMq=iO0>)r(gK!QMv5D`{+ZMcaHj+TOJvuH}QHoGfE8QQkF!CenyuH zc``~w@`>_xlo$|x`2=n3*aSKWtCQ!=k#az^h~Zz$$*`F!4ekq#{Q@1+ejvptXRRL9_+|<%r!Ss>ib}akBDeP|R zWsv^1REHDthiLKZZqK1Y`@SwmB(?pm9lE-)ru7if5pwYmk!Y0-5%Jt%d(RCOw|l?3 zXc}XwOIho*4vnh#klVlbHDIM0ujps6I76~wu=IbnSF}xrbrkjp_joyTfw7} zRoZ%NZJpR3@`EzSaT75fF{)=uMh$de-%73FB%Jut>KV!Kw&xp(= zMB#GVI%piU6L~+a_#^nP!&hBhJ)^}(c|Zpd$_1JzAM8kYRZb1oxkkA`c}n>~IY{|I zIY~KU|9WuCgq7u*w}ivw(Y-TEAp^xE%|M*^isSpHiVFFcYfXNysUk#vQ)}`UnJQZ3ms*p5 zi>V?<{%u-QzwFRabW#$O>M+uby*iAfEgeSE6*`QhkLoaz{)Y;qtxxGFQpGhoili^< zD3ZRcqe%K1v?o^Y-E|#On(@63Df#bcP5uWuyySnPHTi$HQiYoQjXLb)=d1nNxmtAr zE#uN!(6BijR;&J?8PBcu=fM!up9jNCf8YPY^yfs9>F@7k)8F5tOn-lmHU0fP&h+Qa z1iN7_RhVRQng5n3^w4+H$nh@b&c@!X1-rm8a1Ojt%-L<&fHj;s3vnIg4~E3glWXcUQcSP{g5BrqLhfaPE_ zCkg8^bnr*8790XsfDa^Y;4B5q1{=U9pd6eB4}nvnZ#?)j983ap zK`|%?*FZh!yb&D>UIBB!hhPUd0_s5UCeB_4sbB$E1`5G;Pzk;QcYzDt*b5|sso-sp z14LdiFDf(&Jkv6I04S%2{H1c%$k6LGsom}Wm`vik1or(AI> zYG2H3#eBL(p(k_baFQzb&KJ*j%o(l*mED-g>}#4@d2zn@hR>3pr-_~s^=El&CI3!h z>;`z8WZg*<#fFReg-mp(;uY9Ec3Nq28$@HzIYlSw29E$k5{Qx=L{0dv!`=gpia8yAWU zo+}q*h$t5YfY>TGQIQ%*)XL9MbW*!>d#6atwke)5!Esw z3$>=!;GHGMXQ8SPgo~)Ox7TTj4h3~hHQa=%suS*n?Mn}uRSWl}3l!v!voOo6*BYRM zNVEFNt-lh_%i1jLVBke$mvt`-cSqu2?M>^=98toHwi&Sp7m0qse2|s6TzHL6Q@)-y tiJo>#fu(Hi3wzi)xl$}N1bkMqS6uAaengRAhma%DsA!Cputl5?{Xe-Y_N)K^ diff --git a/bios/win64/syslinux64.exe b/bios/win64/syslinux64.exe index 22968ce06be4b529bd0f388e617522608f8accd0..6b3270dd104b73875c32f1ff42f75a06c05c172d 100755 GIT binary patch delta 35567 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 diff --git a/com32/include/syslinux/pxe_api.h b/com32/include/syslinux/pxe_api.h index e9baa48c..3e994c09 100644 --- a/com32/include/syslinux/pxe_api.h +++ b/com32/include/syslinux/pxe_api.h @@ -589,7 +589,7 @@ int __weak pxe_call(int, void *); void __weak unload_pxe(uint16_t flags); uint32_t __weak dns_resolv(const char *); -uint32_t __weak SendCookies; +extern uint32_t __weak SendCookies; void __weak http_bake_cookies(void); #endif /* _SYSLINUX_PXE_API_H */ diff --git a/com32/lib/sys/ansi.h b/com32/lib/sys/ansi.h index 7ccafc8b..39a6f410 100644 --- a/com32/lib/sys/ansi.h +++ b/com32/lib/sys/ansi.h @@ -7,6 +7,7 @@ #include #include +#include "vesa/video.h" #define ANSI_MAX_PARMS 16 @@ -29,7 +30,7 @@ struct term_state { bool pvt; /* Private code? */ struct curxy xy; struct curxy saved_xy; - uint8_t cindex; /* SOH color index */ + attr_t cindex; /* SOH color index */ uint8_t fg; uint8_t bg; uint8_t intensity; diff --git a/com32/lib/syslinux/disk.c b/com32/lib/syslinux/disk.c index 0b0c737e..a824acc5 100644 --- a/com32/lib/syslinux/disk.c +++ b/com32/lib/syslinux/disk.c @@ -171,22 +171,28 @@ out: static void *ebios_setup(const struct disk_info *const diskinfo, com32sys_t *inreg, uint64_t lba, uint8_t count, uint8_t op_code) { - static __lowmem struct disk_ebios_dapa dapa; + static struct disk_ebios_dapa *dapa = NULL; void *buf; + if (!dapa) { + dapa = lmalloc(sizeof *dapa); + if (!dapa) + return NULL; + } + buf = lmalloc(count * diskinfo->bps); if (!buf) return NULL; - dapa.len = sizeof(dapa); - dapa.count = count; - dapa.off = OFFS(buf); - dapa.seg = SEG(buf); - dapa.lba = lba; + dapa->len = sizeof(*dapa); + dapa->count = count; + dapa->off = OFFS(buf); + dapa->seg = SEG(buf); + dapa->lba = lba; inreg->eax.b[1] = op_code; - inreg->esi.w[0] = OFFS(&dapa); - inreg->ds = SEG(&dapa); + inreg->esi.w[0] = OFFS(dapa); + inreg->ds = SEG(dapa); inreg->edx.b[0] = diskinfo->disk; return buf; diff --git a/com32/lib/syslinux/load_linux.c b/com32/lib/syslinux/load_linux.c index df934e40..06ae2a97 100644 --- a/com32/lib/syslinux/load_linux.c +++ b/com32/lib/syslinux/load_linux.c @@ -124,32 +124,29 @@ static int map_initramfs(struct syslinux_movelist **fraglist, return 0; } -static size_t calc_cmdline_offset(struct linux_header *hdr, +static size_t calc_cmdline_offset(const struct syslinux_memmap *mmap, + const struct linux_header *hdr, size_t cmdline_size, addr_t base, addr_t start) { - if (hdr->version < 0x0202 || !(hdr->loadflags & 0x01)) { - struct syslinux_memmap *mmap; - - mmap = syslinux_memory_map(); - if (mmap && !syslinux_memmap_highest(mmap, SMT_FREE, &start, - cmdline_size, 0xa0000, 16)) { - syslinux_free_memmap(mmap); - return start - base; - } + size_t max_offset; - if (mmap && !syslinux_memmap_highest(mmap, SMT_TERMINAL, &start, - cmdline_size, 0xa0000, 16)) { - syslinux_free_memmap(mmap); - return start - base; - } + if (hdr->version >= 0x0202 && (hdr->loadflags & LOAD_HIGH)) + max_offset = 0x10000; + else + max_offset = 0xfff0 - cmdline_size; + + if (!syslinux_memmap_highest(mmap, SMT_FREE, &start, + cmdline_size, 0xa0000, 16) || + !syslinux_memmap_highest(mmap, SMT_TERMINAL, &start, + cmdline_size, 0xa0000, 16)) { + - syslinux_free_memmap(mmap); - dprintf("Unable to find lowmem for cmdline\n"); - return (0x9ff0 - cmdline_size) & ~15; + return min(start - base, max_offset) & ~15; } - return 0x10000; + dprintf("Unable to find lowmem for cmdline\n"); + return (0x9ff0 - cmdline_size) & ~15; /* Legacy value: pure hope... */ } int bios_boot_linux(void *kernel_buf, size_t kernel_size, @@ -159,7 +156,7 @@ int bios_boot_linux(void *kernel_buf, size_t kernel_size, { struct linux_header hdr, *whdr; size_t real_mode_size, prot_mode_size, base; - addr_t real_mode_base, prot_mode_base; + addr_t real_mode_base, prot_mode_base, prot_mode_max; addr_t irf_size; size_t cmdline_size, cmdline_offset; struct setup_data *sdp; @@ -243,9 +240,19 @@ int bios_boot_linux(void *kernel_buf, size_t kernel_size, real_mode_size = (hdr.setup_sects + 1) << 9; real_mode_base = (hdr.loadflags & LOAD_HIGH) ? 0x10000 : 0x90000; prot_mode_base = (hdr.loadflags & LOAD_HIGH) ? 0x100000 : 0x10000; + prot_mode_max = (hdr.loadflags & LOAD_HIGH) ? (addr_t)-1 : 0x8ffff; prot_mode_size = kernel_size - real_mode_size; - cmdline_offset = calc_cmdline_offset(&hdr, cmdline_size, real_mode_base, + /* Get the memory map */ + mmap = syslinux_memory_map(); /* Memory map for shuffle_boot */ + amap = syslinux_dup_memmap(mmap); /* Keep track of available memory */ + if (!mmap || !amap) { + errno = ENOMEM; + goto bail; + } + + cmdline_offset = calc_cmdline_offset(mmap, &hdr, cmdline_size, + real_mode_base, real_mode_base + real_mode_size); dprintf("cmdline_offset at 0x%x\n", real_mode_base + cmdline_offset); @@ -281,14 +288,6 @@ int bios_boot_linux(void *kernel_buf, size_t kernel_size, } } - /* Get the memory map */ - mmap = syslinux_memory_map(); /* Memory map for shuffle_boot */ - amap = syslinux_dup_memmap(mmap); /* Keep track of available memory */ - if (!mmap || !amap) { - errno = ENOMEM; - goto bail; - } - dprintf("Initial memory map:\n"); syslinux_dump_memmap(mmap); @@ -304,13 +303,21 @@ int bios_boot_linux(void *kernel_buf, size_t kernel_size, /* Place the kernel in memory */ - /* First, find a suitable place for the protected-mode code */ + /* + * First, find a suitable place for the protected-mode code. If + * the kernel image is not relocatable, just worry if it fits (it + * might not even be a Linux image, after all, and for !LOAD_HIGH + * we end up decompressing into a different location anyway), but + * if it is, make sure everything fits. + */ base = prot_mode_base; if (prot_mode_size && - syslinux_memmap_find(amap, &base, hdr.init_size, + syslinux_memmap_find(amap, &base, + hdr.relocatable_kernel ? + hdr.init_size : prot_mode_size, hdr.relocatable_kernel, hdr.kernel_alignment, - prot_mode_base, (addr_t)-1, - prot_mode_base, (addr_t)-1)) { + prot_mode_base, prot_mode_max, + prot_mode_base, prot_mode_max)) { dprintf("Could not find location for protected-mode code\n"); goto bail; } diff --git a/core/fs/pxe/http.c b/core/fs/pxe/http.c index 57223728..0768c10e 100644 --- a/core/fs/pxe/http.c +++ b/core/fs/pxe/http.c @@ -121,7 +121,7 @@ static size_t http_do_bake_cookies(char *q) return n; } -void http_bake_cookies(void) +__export void http_bake_cookies(void) { if (cookie_buf) free(cookie_buf); diff --git a/core/include/core.h b/core/include/core.h index 127ac656..1fd283e3 100644 --- a/core/include/core.h +++ b/core/include/core.h @@ -92,8 +92,10 @@ void call16(void (*)(void), const com32sys_t *, com32sys_t *); /* * __lowmem is in the low 1 MB; __bss16 in the low 64K */ -#define __lowmem __attribute__((nocommon,section(".lowmem"))) -#define __bss16 __attribute__((nocommon,section(".bss16"))) +#ifdef __SYSLINUX_CORE__ /* Not supported in modules */ +# define __lowmem __attribute__((nocommon,section(".lowmem"))) +# define __bss16 __attribute__((nocommon,section(".bss16"))) +#endif /* * Helper routine to return a specific set of flags diff --git a/core/include/graphics.h b/core/include/graphics.h index 651b7bc6..b1b442ad 100644 --- a/core/include/graphics.h +++ b/core/include/graphics.h @@ -48,7 +48,7 @@ extern uint16_t VGAFontSize; extern uint8_t UserFont; -extern __lowmem char fontbuf[8192]; +extern char fontbuf[8192]; extern void vgadisplayfile(FILE *_fd); extern void using_vga(uint8_t vga, uint16_t pix_cols, uint16_t pix_rows); diff --git a/core/isolinux.asm b/core/isolinux.asm index bd4e9556..c4db4133 100644 --- a/core/isolinux.asm +++ b/core/isolinux.asm @@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) call getlinsec pop eax pop cx - mov dx,cx + movzx edx,cx pop bp pop bx diff --git a/efi/Makefile b/efi/Makefile index a818abe0..4bf5a229 100644 --- a/efi/Makefile +++ b/efi/Makefile @@ -48,6 +48,17 @@ OBJS = $(subst $(SRC)/,,$(filter-out %wrapper.o, $(patsubst %.c,%.o,$(CSRC)))) OBJS += $(objdir)/core/codepage.o $(ARCH)/linux.o +# The DATE is set on the make command line when building binaries for +# official release. Otherwise, substitute a hex string that is pretty much +# guaranteed to be unique to be unique from build to build. +ifndef HEXDATE +HEXDATE := $(shell $(PERL) $(SRC)/../now.pl $(SRCS)) +endif +ifndef DATE +DATE := $(shell sh $(SRC)/../gen-id.sh $(VERSION) $(HEXDATE)) +endif +CFLAGS += -DDATE_STR='"$(DATE)"' + .PHONY: subdirs subdirs: mkdir -p $(ARCH) diff --git a/efi/build-gnu-efi.sh b/efi/build-gnu-efi.sh new file mode 100755 index 00000000..3844e75b --- /dev/null +++ b/efi/build-gnu-efi.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +set -e + +# Initialise the gnu-efi submodule and ensure the source is up-to-date. +# Then build and install it for the given architecture. + +if [ $# -lt 3 ]; then +cat < + +Build the gnu-efi libs and header files and install in . + + - A gnu-efi \$ARCH argument, i.e. ia32, x86_64 + - The top-level directory of the Syslinux source + - The Syslinux object directory + +EOF + exit 1 +fi + +ARCH=$1 +srcdir=`realpath $2` +objdir=`realpath $3` + +pushd $srcdir +git submodule init +git submodule update + +cd gnu-efi/gnu-efi-3.0/ + +make ARCH=$ARCH + +make ARCH=$ARCH PREFIX=$objdir install +make ARCH=$ARCH clean + +popd diff --git a/efi/check-gnu-efi.sh b/efi/check-gnu-efi.sh new file mode 100755 index 00000000..fcf5fd49 --- /dev/null +++ b/efi/check-gnu-efi.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +# Verify that gnu-efi is installed in the object directory for our +# firmware. If it isn't, build it. + +if [ $# -lt 3 ]; then +cat < + +Check for gnu-efi libraries and header files in and, if none +exist, build and install them. + + - A gnu-efi \$ARCH argument, i.e. ia32, x86_64 + - The top-level directory of the Syslinux source + - The Syslinux object directory + +EOF + exit 1 +fi + +ARCH=$1 +srcdir=`realpath $2` +objdir=`realpath $3` + +if [ ! -f $objdir/include/efi/$ARCH/efibind.h ]; then + # Build the external project with a clean make environment, as + # Syslinux disables built-in implicit rules. + export MAKEFLAGS= + + build=$srcdir/efi/build-gnu-efi.sh + $build $ARCH $srcdir $objdir &> /dev/null + if [ $? -ne 0 ]; then + printf "Failed to build gnu-efi. " + printf "Execute the following command for full details: \n\n" + printf "$build $ARCH $srcdir $objdir\n\n" + + exit 1 + fi +fi diff --git a/efi/find-gnu-efi.sh b/efi/find-gnu-efi.sh deleted file mode 100755 index bf203d84..00000000 --- a/efi/find-gnu-efi.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh - -# Find where the gnu-efi package has been installed as this location -# differs across distributions. - -include_dirs="/usr/include /usr/local/include" -lib_dirs="/usr/lib /usr/lib64 /usr/local/lib /usr/lib32" - -find_include() -{ - for d in $include_dirs; do - found=`find $d -name efi -type d 2> /dev/null` - if [ "$found"x != "x" ] && [ -e $found/$ARCH/efibind.h ]; then - echo $found - break; - fi - done -} - -find_lib() -{ - for d in $lib_dirs; do - found=`find $d -name libgnuefi.a 2> /dev/null` - if [ "$found"x != "x" ]; then - crt_name='crt0-efi-'$ARCH'.o' - crt=`find $d -name $crt_name 2> /dev/null` - if [ "$crt"x != "x" ]; then - echo $d - break; - fi - fi - done -} - -ARCH=$2 -case $1 in - include) - find_include - ;; - lib) - find_lib - ;; -esac diff --git a/efi/main.c b/efi/main.c index 2eeeba32..d37a57b5 100644 --- a/efi/main.c +++ b/efi/main.c @@ -10,11 +10,12 @@ #include "efi.h" #include "fio.h" +#include "version.h" __export uint16_t PXERetry; -__export char copyright_str[] = "Copyright (C) 2011\n"; +__export char copyright_str[] = "Copyright (C) 2011-" YEAR_STR "\n"; uint8_t SerialNotice = 1; -__export char syslinux_banner[] = "Syslinux 5.x (EFI)\n"; +__export char syslinux_banner[] = "Syslinux " VERSION_STR " (EFI; " DATE_STR ")\n"; char CurrentDirName[CURRENTDIR_MAX]; struct com32_sys_args __com32; diff --git a/efi32/com32/elflink/ldlinux/ldlinux.e32 b/efi32/com32/elflink/ldlinux/ldlinux.e32 index a3c1600cf39d27934efcfb23f94cb4a81018eca4..c71dffc761495899d5d9527ca491fb97af4d2f1c 100755 GIT binary patch delta 30593 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 N|Nn2Q{;K5j{{R^C*xUdB delta 30451 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 diff --git a/efi32/com32/hdt/hdt.c32 b/efi32/com32/hdt/hdt.c32 index aea6ad5333c4371b42554de51d8bc0b4330f17b5..76a0aee950737971d40f42b6d84354b93cb40726 100755 GIT binary patch delta 11301 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 b-e)NHM7?UX)mffFuNob6v1jJ1M$`WSE$3FH diff --git a/efi32/com32/lib/libcom32.c32 b/efi32/com32/lib/libcom32.c32 index 3506e3a4a23c126c6772e4d3dd8082c766b28075..a529deb2e61e937a429dff7def9cbb26cadd6950 100755 GIT binary patch delta 19510 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 Dl-Js{ delta 19458 zcwTi}30#!L`=4i6E=55FMNq;$4-CcG+RS8O@F+Pi*b3w~IYBDO?`iXZSH_WXx_!x|qLM)jpwl~wsmE-Ru^dneh-{a^*F%SIPhEEDUP#2uo9Epxti<@)1QN~E zcs^`oJ#3_#qSs?$q{jw#1B6J3Br#Hr*MJI&83{zJ9IflCL5#nXF;A=Q)?NWYLI)#xf+)JWB(YtC0@y{v}xoW-sP{C+~ zvrr`=BRDm<7&e0AnviYKY=}^CI1kqJ%UmhOs0Gt7v(!T(i8x_WeG(nicwTKG+9AkI zR`eX4_@!tPU#a!h!)9i}W~!+1H=y!5he=nFkvsmx$kdJ`uB#WSKqBQ`NX%9*{0J|o zJ(onVq7xtiUk?eq2%A_@lf+I%zZDLK$H@wbS+TxsOJcjCbHTtMFworx{?8pB)e~Y! zPbu~(kzK&bM-eD$sTZzc!@x2j1}g>|!q2_n=e5^QUH2eQO zM5T|^_#TWe(7nRw)X64HY~f) z`B7k0u7T^S@iUOXFYQTuqz=#$Dy{|NG4H3 z(SDHSsi7nmsRdyUV$fP4*0|yXton#Ypy~$m&h>}``*7k1FOoQ==C?-{8$U^kFtz>% zQ1RrsWUSEHLSSu(BSg_yMReay6?7w5{myzM1}l0s=+r_I{S@5+B7L4ks_4^@&@c~` zJ&*a7;Wdra_z>9Iu$@M#h~05uZPi#Q5*5ea;?1@m3lzdg?R}-_s^&L^XcIn?qPkMS z6GX}s4-waaD5KM1<%(_qUD=UMMYvO9H6{E1X;Bf$2BD+f`%<)WEeL;Gx8EJPjzPrP zcq>(T$$l(!e4<;V{ek^f3-O(zn?SU$L4u7HZGuW1SjV**KxNfj}!OdV`AsF~s(LS*9 z7O?WximnDD{&zizo~mA`kCe_+D{4M@DJHf#nF zgk&G}cMn!Ou?mUvM(ET!>?8{cRBC)I=#> zbJ9lfAs&YAMj7UM0UONlbGzjns9<3r^0``I78q_i&0VrhMIb8nC{hD)w6ln8u9~kN z4v-t-K0q7-%9bJ$QMwl)|NjlEKCupgL2VF>o&QR62a?^`aBCQePt|xkAHKi17u*8| zTcctMP~&qTk;4~UDyS-sf`KpUkQnNcC~V>i^s9$@BRaZ3R-4mEys9SbN9-TpQVP4G zU&q1=AX1lC{0n7nm?_0f*MgukK)V<^0S4#$x>YzD>*b<8xUT4Tpu1qDLL+nd8T_a7 z_wIBWfD>Ht5NQ*Ltmgp|4mJKe@YXT}8+GEJAj*ADgcz>I%`n2a>QZ!8R^JBr$G>iy z(756nK;nT^`M(`Hj-n;Pa30l4ipz?A zAzX<4xOn`k=to$uHW+aEy%FN+MOn`O1-cb^dBfXho}<` zMWn0Ml0=qbm@AcY*W3lm572ombUs$m??NRKq1cr>SkmVa7DHV5KL&o;+auH#!>a8K z-75HzjSf2Pt;XMm&QDF2Vu+%b!Z>pJ$qFy(iW6_&>Gq-?;A{Zgx}~D8<3NYNu+g<4 zvn1IuHlw~<2~ZQ7ckO?sHsa-uE<3! zKjq;i2%=*8hX_7uegQW4957uW;2`r05?Yiv1p5R2Ql??)NAn zmt(=M$nP$rT80yz^EhE&yb$`4d;V4EJUB{Lq~AnTB28l5MeJ{&M~s&hk?#)}=xJc+p2y8d!~D}IVk;}R zybXyw8srXaL9m%NxJ0euUW~ehl!xxoE+*WiAoZ$Em?h{M`XCJmAu}zJaLiF43xeJcBz+iJQ=(@~iU|zjl zLTq%>MzIjGxiW&pLp7lG%Ivut3@lx7+z6M(#(6^^KyvpyMr(Bw8sEr-0#)an*7qlP`g*_rOjt?_k>)kxXDpC3WHah$v(g|w9K^S4dAh+AC zgTH(LH;h+w2dLoP-R@+v9!Bbo3iShJw8LQ&d7a$_N)pWCN)-|xD~T+I1Sib%xc^_n z39>wr%}JQ=^H)f$R94;$5-IkO$ai31I0F3;wct$nZ(I$k_}I;eB$bQX?p#G*#D)d@ zIj!JNNh*mFtd|I{FuL4=jmrlY1y`(&#fdL@M6OGa$k{>eNcaFEHF>1dBzVoK2q`ux zx-VW#oaU~8PGWwB$Hk*L)*m()`QPO>pFslaJU#(QN2txi&B)~i98&AUK%x}=+kZ~< z23EeZgDR@xR-i}XK(5aRDueTRTwqG41p7mBQS*&b^im=n0`uQPBwlb?EhaXG(YcC9 z8#dfrv7x^xMz%ck5$b-W^D>Acbv}tm^?obRAv2J^eVuee7*qAeP?=I`OC+lq#)oD z0;Alp zk18Zq2)tqu6}co4<0Xaebes_k-VA$5WU7vS(D|@ncY5Wd@-|}iIYm!GfVp&tM0>TM z##b$m5240F0%M1}Z__t%!X^kbu1~v1AP_C7vhsOQSzG=LNzt!j{#%(O1}TQSVxIu$&sATX!u?C6&UL%l zdKk%0kB>^*K;%t2NO48cj}Xfvaou*Epe8swzter!>jC_1Id0RHopdB5uw1OJsxhD z?(sPv8}C@8*LI37#|9hH+;L-SfQ*ug8v#0RvZT_cAa=RRF>iKX?P-Jy$+EtPSJ0{h~qtM z>^M~R!yxB9K+pe=vEZm@+;#b47>Qp`>EsafWJJdMlEfE^t^rQk{aaDPiOX=?As$t6 z4B|+X$49LXU=uG_Cow|Nv7kQ;&~L-e{C^7@B=2&U&1-Oi8pz+Si^#X|67L!A6KsWq zmLGNJ^V{L5m?pYEgvtfhK|$jBhyScp-X|DX=9)5d#fcx+L-iDP= z^T<|`-Dj}-gnb~p5og@VsTA(gWdn)t)W_|MFtLBCJO8hOgl>8Swy$ABTM??eyJGWF zh~z>LRb;m%h^YY{p>-HU8V`|HQ{$_l^Y?4G-L3)baoB0Bq3GdY=zH7^3sqoy4h*#R zV4xiD`+%3_ks#KsrIqn7#=pNiK1F4j8fQEVLOH06ecR%dftiq6&_T0O5wTl*5ncOjRhB+ zAGV;g4jIZKAj0;GlFm6S)#+W9=0!AY|G=m?ilE`9&B`;x2M#g5$Me)SAjKm5? z`2H$Jr0Ug-O;8Xswv-}|5dn7tBd-3N7!4#gGyV=0GDaiHGa|X}1R8x%W)*S=g3^A* zmq;9B{F20BM!5eGM%-PGGwy{6F?vaHj`3M3iWwKfm>Ek**cp-gZt5q8BQYYd-eW{G zc*KbMwDgoT3Ln&>;xsybL%qW2L&A@7A8df}0Bje=NZp}x(7w14hciBc&KVH|n=rOO zHfMy*L@_o)oMM#xnJ4gP=$vsFav~#AQLob|lzkBm`*O!^=$sL0KaTMxtdtQplEC;U zbk2x0F`jW8bk2A~h*$K5p>xJ#&^cqE6e)}kNX%oL44pHUk;q`oz}?8m59diNVYEZ% zj2lVhFxHY{g?>UQRxxHl=ZuY|$YuNyR|!T0*$w(S&^eM|m0hcmv1 zdkN!<@OwrF{GJiF{wPMIfwqkIQC2WoNpxb&hYc`>Lbtv6VKb5*<2(|vj6PDtF@6cZ zXS|94#fai#G$ZQO@r>6=Br@KH-!l#%F_jS))R~N9;rBWtumMKox&@3M!0j20DEqVc zVHRwF5q0G<#uV59;}R4}`it;;#yccdGoq5qWvm0gXAFl8F#bVe6JrEIH{*M-0mj|1 z0mgLL0OL1EqClfBQucoC_yumpSOC9g#0~BUBW}LO8NVQLiqQfaVEmdyF(V4lD~z}@ z+8Nit26RT?_l&Wy0Y+3!j~H=jDP`o#(OLMvZw~zaEIO_t!!oXg4KU)y8^jnOMKB|3 z*-*yUNz`RTl@!jn1UA5k%SsbQ)SE5z`LF>-B%ij7j}ZqL&4>ex*AV*8vj1O1AmEON zumQ$m*Z|{t!~w?9hy#qMq7oQ!8z0SxyTEwHg@^-;sN`N@42KOc&c>~su_X#`#woA? zMqF|hFn$6XF!Dny1OmoaU;~UHQY>Rc)s({+i8#QB7`}?p4jW*^_J8ptcMwKK{~>Sd);xy`LF@T zY~+7N6sE;xNN%z+Is zrWp|k_yO0ZUW^N21B|$5#4>h9{%7ohIKbExaexsu{%FQx!~w>khy#o-zy=t{BNs5* z5C`=6hy#qc6wPBq$-aQm7=dKK5B(7b7-zx;7{4O1jBy>}03)tpD;T>W4lurnT)^0u zL@pyPPI-*W5C<3wkqa1$kP8?;h7BhYc_$APz7#LL6XhK;jBxG~xi`B-jAse&hni@rVPA2Vnz@<%k34*#9db zL7(RZg)lI#M;u@r4I5y@jVg$dkP8?mzy=s`6RykH8#cg*i)|$16T|_=Ervp8Y=&HozUHU;~UJQ4cWUrWVVH`(hm90N4N{ZfFUN>4*c2HxLIH ztH1^rV^I$<)|Fx^W0({(86P4JFjkjh9^*jRfWGh`1Ompxhy#qPQ3Enwh7B-&1{+|U zj2cj905+hX0C9kEFya8?r>F<=BPQ(&p{mxa^Hx!6{+qAI5;d{@G=D^Wz6tfne8L~& zr=CfQKAP>#J?37K21{0*Bi3$jw4fu_X>Y7(c6+oG7Sn1}ISUI@yzLvx9gb`h&wY7c z{D|R0O*ez=ZbktN9-;I8V>%OWxXR4>f;pz7@F5ZZW*mCTrsn zV5*^KtFy59_oL}QDA4#Y4>tyA6QM>#d zi)$GuJpY)b5>ZJ0g=ODKdO3g9@_m&_%OCyWdoT&>-POHnExlakF!u>B>Vs-n2$L~V zr21!@HsudmvxDe{wbI(Qv^Br$+Ejn)lK<_7CjPwEmRVl3K0of;LEbdXx_0}f+Mm^v zB0JOXV~1m3K|IpwKKpqGj=6WaHE~A-O|ve-p9AtY>6iZBQ*1mv7aD4K=8d5R zRPHdJZo1cT={5@3wx~mDDdbk_@yspZ;nVbg+jz8=`M1yX3ZPy2FI<0Qp#Ax+ZvJhc z->vm;zd#>Z<8OaYXRV=k4zn%aSwQbtC*JKt{j6WyO`+q~uzM}(Q|rKc2{h39>Ai4j zVJ*7XoQ>h$P}*eebH5KIT9@A+L?PA-_rvAA%kMrIN^A3nJ-F*d8?Akxyh`1z-#nQ^ zKU<&uH*atg)Zf{eR|}zdd*U8ec}=}%^`djlh z&<8YB%Qa9r4YRHFru#%=Z7Y2V${MDv^&>mIW?SM<)rk^pA6BB9M6YQ}0;n4`v;7!A zm5J)xey>8gMCrD)K-xrf#MZDHH6r>#>sOtI(@S{mLqb0Of8&;n>(M0W?`jkR{X+B}}5e>3^5=Ng8ZO{fp(4MgHeuxak z`?rx;hqeQapTAM`=UUSSltb-p+Z&LD=u544BqdRA+n13PK@@5GwGnk8x@xQ1n0ib4 z$QIv}wh>*o1vICBiArpKEoqUYMBDOK^bOG#TaRek40qS=wk8Kd8~ToVYhShnEVE5{ zo|Z}?+npEb5YY>^UF~Tt(R;Qr9qEexa%cLC$Y1-j3#HM!wh3LSxfdnbvU|{Y19@wI z_omQi!l#$Bf1Yq$8;Oea@H-@yqRm39XN%}VZxi*jZSG4B$vA*+c+p7hgTZuzX4tag zsHYb-w;dcxnUX%&`VXhplx9mGP9vZb?e`IMn_6f^3DiP5jJEp;^qzsHXv@Y>3`J;1 z$DsS({P)I^v03gyr;l0Q;%{9$F6Hz>#T9~9hNAZh+F`VOv=z3`$I@0WTB(hlNbk#k zQ?<)zo0GP z_F~f_$MvL~&4Wk`M4Qu%M5}>LbhXIXr|JK;qqfdV>8sl0YrDCg1{&x)TZau);KN$} ziq`hobOPI)X?nl)1U5)-j|F@Ct^w(5gnV!*3?SQ26wQf7{%2Mss zov`zP+NV3I0X5Tp+(|8E=`-4+oivtKYa@2SPhZh2yQndB)ADy=s+V?a7hDXUv75Hg zX07KQ$mfJsuaNpuwk@d;{zU0o+Fm+Bn{0i)r$IzxwDm3G}?S`!w}o$3KHJZ?^S3gP=f-ZHLd&FruTji1RcG;YC|;fo{c@gg1d@$G&`AU+<^3a-&#G|=|xb-L@#F7p>z=?Cq(ziA@B@i$Fi zJ^u~AG;7KK&@TE(YjTU0Q5WsoTL>KA*t*}Q?|tYWo8b}t;v>V)Xx@(~T)S6}@KI=M z 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 z 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�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 asJNur=J72|*a=*TtYwL?Q-tjKLD4iHVwM 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 I!njQU010b3TmS$7 delta 198 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 delta 6755 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 diff --git a/efi32/com32/mboot/mboot.c32 b/efi32/com32/mboot/mboot.c32 index 86442c3c49a60f67c74a8504721a24e927057a54..33f0040e38480750e3a575e2db85de1d16120e66 100755 GIT binary patch delta 1064 zcwSwTO-NKx6vzK>oOv^&SvpN>@l8ltYE(o?@5P zYgv8fX5e+M)C64SevIyNNVTeQdGFs&t7=vX=}q=YEl)PKwMeEryu4 zXaj?y`ZuIS1UMt6fb(J$xFqu3SH*VVy2#FE#0ushvQv3+D=;E*5=KQA7!z5CagpOR zAyxyEVhng7#yLOJT5v>W#9DS!1_1m;C{__^2uyc8Yajkp_F5bHTc zVgv9=yqWT966u3eenCToN-T5YnQg=ET@qP=3hf9r#Y zZu2=&8_k9_LTrgyPF#%r@3DT*SkJc+b1r$;tR@$&dGockDJo}@xASqYp!uMO()alzU$cfpq9$bE4L+-XCis?QwR0wn(CAj(g?-PQLeg^dfPBp dC9X>5PRfbu)0fPcxs+oqn(wJrD`Kp++JA%pl_vlI delta 1096 zcwSwUO-Phc6o%h#ocYFavPSc_{2v`>DoSgJAcMjn0|{d+T(~GmP!tU+FfgX5g+!3U zHE>}tl#qgpViF1@gj!fcKOohjBB4c#76}%!knDY(FZx*=o_p>&bI-l!J>R5bW9=g) zzJMQy0vJnF2g_GNz{D27%MAno7cpMvSmNX%cT+)lG%?*!xSfF=v<6xuZ5J(?SZa3f ztB$p#qE?G#9WxhPkK^e|pr65fo*5^PZvcv{jBlw3%h$LwzRitig}@6Zf1d2F0(LvT ziYDtbx5`5j#g>`3e?vF0iZun}8F}1s1tK#Qa(( ze~_%D-{JUrNMRl@gv$xSk4%oRUc~3`~pc$z752c3-3j55#<6RxIFb&1u2$c_J25 zX_3SETr2@zi93M>u@rbGQvLU04e&_}0-wdrz!$NMBPNyu-$ah%vRIK3Wi=(OS8r#h zrn29bHFmR6-+!(SjB=AbLXuINY-1z&WK1#cU(<4JNYQET)fM~3y&5k{VqVwv=KR(h zFh@dH?H~M|?Kf{iAFWw4Q(x)RS!-rK&{GB3l<|ZsJ*{4y5(x)AI&<6{sdx2+ygl7R01A_?z1497|0~nYvC@?THXfW_Fa5FG6pn^Bd5X=tZ2rw`JwKDiH zL-E8!YaNgVRv;>4lI;3fH4`r+_$NROfSAX@ z5QN5eL*rYZ@j>>1JTMnX3o)=w?q}4Qe4Noy>jub?K*>8G8Yuq&L<8{?5DoO`3lI%* zD8ptwCMQNiZ6NFGzyJAD7$EMi0O|#~{{#?o0dWoxbA#<!M2&e%qGy`HcAPxiKw8@+-b(4Eo3?}bp5oI))e33<-^90oJ4U>NYc_8aR zIA^jVt32BiAPZ=;8>82kcxD8tLb*|1pdEs!+oq6}2bMH*kybjmmxtdCpA)G>p_Pi7i~82=06*{nXGC#JL~P~(AXI;hiTPxHx&FGjQFObyml(9(Q?K;Y zi#;{FV%ImwQOKoTXFNcXg7QR}2;~dq-37-v*e_J%osu2>K))Z2pPbnxPXR7C0|saP zsZY%+_B39U(CQI%gJ;WKanbW(asw?HkK z(?@h(MNJ-p+0eD+6^1|bJfY)oewJBuOHyWS8`?WvE Hz5n7DFWgHX diff --git a/efi32/com32/modules/host.c32 b/efi32/com32/modules/host.c32 dissimilarity index 94% index a31a9034d406ca15e212023d968e6a57d1891169..fd0c639fef9052b80bd503ca3ce6245ee5fb9aae 100755 GIT binary patch delta 556 zcwYO!w}fwkgy#e%1_l!b28J&z3}9fwpuoV)puxb$z{|kMfC>^=AebG*5nx~dYGqi$ z48;=@t#v>eSb^BUjY$%uhzqJw<=BUpGVRt{s-Y#Nw=UjWl3hQmX5xhc|9q$c5c4=0 z64CgfXnc1xKFB_h2etxfAqMuz^BJutKVx(X<20|UqzE-a8hPyk{P zAQl8-aS)pc!e*H)$>J>ub1?{n0cFyFxD1HfCfBm`Oy*-XnrzQ1%4jkqa^n;=)oPr`N9W0(tQX;6qAaZF)PBb@E zlY z0uLzgf7LaB6T$!&UI01@FAf{c&1{H&NZv^ElA1Tg8{GuGc^A;8qq)WAYh~lmK4lGY zfzelQ_SLz*nprXH2a3bQWzuFwA4EaNhLUyXisizrY3`Pa_@vAw)~F}xT%IEdt*{6h zQR7IX4>%HzILiA8bx&DYpmE*rAM=7Ddvm2&+B&wT24S#A34qxZG|P|(VT9l#1PB?` z%H#OuSPuOO;k8elQ^F1d)^mDO91LlvZ0%Q1GCbh=o83y{I4*^kPd7 zLha;K5Ipz?MEVza5y6Xv7DPnou?LGicoABC#;gY&7=G{P%ro=8+u5V; MN7El1q z$Bh-x0TVs&;KIOND|>Zsiq1C>Z{5f@N+a3MHm;K$M-0}C* z?aIp6_d7qvjM*-ueytwK#)EtF_`UfIInUHFGJu0i+}$51AIE_z4}@qEY4{`S=Fp1X z;WA=mBbCLKEIFlRFh^R+Iy#glMJpMjN7)GUDp_w{$v_3A4Lngc0|Uwy;F;0^hLx?r z3#E%3Ug>~7rex11lmRfM41sB70w{i4jwPEPol)z>|EqUZk}|PMZIppSI@6(#np;qR zEy{%>yKd6nH?=E3O@6tf;cZ{kmRQS&nDl$kjagaqzDU~7%c$RG3`oguw-2MxHTlGu zCR6W|9lzbGnY#Yd&sZ9MU;c4aWVoVagN&vBW=mdkbilF?WRatre;}Jd#@2SL$K`L3 okdwf%98blb@svKvybOlPV2+vfkL4q=WqA`mw5r^%$VQmB1`VEHV*mgE delta 760 zcwSwSKWI}?6vn^T*TlReeR(fd5~Cfm+O;*nVFr&tWh2{4*z=C&B8!O-P=*$CO0^~n{*L|zvK5gG7|u5 z+z_S6?`_Gte-J%Dv9y-Y=2n&2r8Rll)eL34{NlwzVfnsSlofNjto;Kjp7ir1NhK{h zr^n{J3re1QN@)VqN)DJ&`hjao`ZKF!qw7iwxTy>Rx0E5^jxr1^Dk*JAX(NplO&F_6 zdR$Vvz(ZveSXUkgDzE3eW5Kas)cW)HpF)kKOw_22GO)|wI80D;sO1lMt-y$E*)eO+ zR0n~EytA(ck30nAbmWrtihbTP%Hl;{gzpxM7|j-PIWJ$5uXak3POmW~lTN?2+n!Sw zkCjf=n2;wM%w=$ZH%H4*>T(PRD#jIVbN diff --git a/efi32/com32/modules/prdhcp.c32 b/efi32/com32/modules/prdhcp.c32 dissimilarity index 69% index 32516c922f774d838098e8efd42a2629dfd002b7..e5ab2f11733bbee5347dd9f664d1e8eae876a5dd 100755 GIT binary patch delta 612 zcwSwSJxBvV5QXRNyqMiwBngNS!NecX!a_nCn~>6ophXG=iv$rY0xI}d2&T}WkRoAh z?6k8mAZVdrV`FD0Ru;B4R@wwn-`rgkvoL%!x3_QS&D}}wW4sp6MLLMmL^Q0)U1>^^ zMWfV3VKV6dswpozrHBxjz*W$XdU47)t)Gw8pR2oPco4#7l!7!1t_O(9U<^m!{6n6G zqL;S%v8}#utGB>+=uP^18L(s%1r4uuA+B0441ja2%xiuyXXf+hKLEKoA!L@t56+Z? zFtjSP(6SIJ+d{;S5Z9E2@V+OE5*-LJkm}`zwP;T?aG8wl2J!Lry>bNF(mJGZo9k94 z-6U^9P{O#07C5SUv}4K4h(1kDsi|1YwyaHTRV=QkLB3FjoY5&>(cQ*0@9Ttm@s*R@ z&REy(!tHtW@yD^h*Af^j4h;K zxDFj!aOlt>1;q~SA5d^EQXCu{9CdJT5&UuP%X`q~gUh-1@!jv7bMHGC+8*8PIs2E5S^ z4@Kfu0;m&H?7xgU+Yk9T?Wm7C>OURzJK|l+C`9i)BQ^}+Iqmv8kO}3|9nwgKR@7?T zkS4Clh4V9*D_35>s8*NWlxx!JD$cL4D?zF?MM{3JhS}awq~lFRmv$8S;wMGMXGKcb zR_q79DyD#Mij>;gd+9EkC%;InVtz9&u5YSaM5Au_G}&;%&{ZUy_VhSr?gLntbML;* zxjIi^#FdmkW8;wkQt>lpka8Z$N57GLRjXlgvAVomuB=GfK6i>zvZMYB9ZeI2KU uC+ER{90f_U?yH-#;K5@r@}`T5mldBlFGZsAQN1JglH=xxx8KUH9k>NP>SAXA diff --git a/efi32/com32/modules/pxechn.c32 b/efi32/com32/modules/pxechn.c32 index 51c7909eef4bd8669b72535eb79ad306eb7ec79d..e8c60dd73b51ff7f1aa30460225ef61c3a180409 100755 GIT binary patch delta 1560 zcwSwUOGwmF6vn@qaVBRP%}moW-#zT%G$V$FQbuO>Pz<972}WqN2r}&9LYRUU29?R* zAR=lOQuKffD~yr`GHW4GGC_+LEix)x1ZfmR^?lAY&0#LTd+xdabMJZG?#2%d=TkQ~ zB>;us@MHW}h%7jehj_%nhW~$|mC-Rn0>85pqxln~V_!u~3l_(A+-?eJ!&;7Y9P6i8 zC^xJy+{jVMvB|2kHTU$}+U&vB6yOn;5_wE7Z*XxQ@ZHEd_#6*jZshmWpPLV~8@YsX zQz}qv1n)_k#~@HsBAN`BA-CH%*fB|LEvaEFy9efP;hFvq26q0qrq>y zakG&#=#euWZ_fpm z8acoN_wc}DMt(vL)8pqRq}!=~P5mLexiIxx=J1k6uT;LFz3b-tBivV(1+*A_qlXJ; z(=lf%4Wy!oJm`d+#jG;%fdPp9N?1085z45XOv2c|_pkt^!ybKP`U&7P`Yrw?$I zu*}3*;Ihalg+!X|CTGypJyA!CH2GL$`G&<9pkH(XFT_p2py&c#iLBd*$aZ)uGQRIb zH@$eTi3j)~GRmJsre{Pf1-^=2`XI8-euxalFL4%~QA09)F(NY`D>4{fk#(FPG9F1{ zB9JOFAq&JxMlnm1Vql@T2*?we(G_Ac;1`*(LXpi`EV6J*MK*Mq$et+|*^HGU6S!4m zqt}Rh5w?rVfL-DOpiT_3RQ77Z3^j-uzyYxcI4EYac|?}T5s|M-i&zGq}DdS-)z*)$vwcVWQ&2F+zau%W65$i@E*A;z( pt)W1UQzhML{iM3fr#ogBq{YcQ^TO+%1xr!~>3!qmRsTKqe*q<|%oP9t delta 1643 zcwSwVOK4PA9LB%N4gBmeeD2Y0OR;!aT!AdJk z7ge$lOgI+Wl2#Xj1vOO?AE3}F#K)pg5f=(l0#y;oLSZ6V`1(HY8ML{~;dj6LKhOW; z%%j+aj-H~%o;;uiKx-85pBj|Hk1FJ1GJN>|lUf1{u}zTRxGbU|l4-rW*Jpo=xkbI_ zI^8w2)UmB)`|P6`>McLF+`!hr)@U~Q64|TDnl}ujeBD{ezCz#{zfa{_SGkR=Gk}*? zYxRDvzR>Dn+WTh$$E{vL-BScKTm1{!SpfWC^(Ah*We%{~=jk>w&HhuY{Wl+yILZa9 z?S~P+cSJpT2x4fQZl%6C4_IgWUnJ87A0`~-0;`I-39Gl0|IpZNwcH<_;yFzEMphE| zu^gD`_ddu=o$SzNJ9Klxd~Psd^=zJ~@)NwDSh|dSKo7N8{qML9Pa*@<6QNB8u$c3; z&;!eD|5%a(f>pp1`$7DBIxyerlYTE5vZ>1uhRY3n#|<2`_CHBy8gR?HcpL36Xpd*v z1JJ%NpM9)dp&jM?XYBZ77dy6>0*7pe5cT=u5BeL@p$8`00ll=}=dqJkH_`szM=`DE zhX0rg6x#83$9Y7aY?;b$o_$~-=ahe9bH{<$x_ErwmmLYSHPnuf zl*q;IkP|q;Jy9DHxzIzAF&q}@vPYr=JQW*(5itjNE;75*A}eQ1WL~`zgF2gPFGRPC zj730X5X0h1o-4gWB`sF6d_`vZMv?K}EHaMUM3!)?$n@SJvi93WhAk$tWWNv@)~`g~37w(~bcqWX zZgCcHSWGg3zSqlQ*0MO8B_u8dj)^6#dy#o_LaYOR5_D^v&D&38gyQZ3d7(jL{ep{a$_1&Ad-} zZyGmJ7#t3HIhitBBF&*p1_I`C>WhyqY6R1KfzdNIolim;tPOj8W`jZ?SXxADVbdU|EM{`l~6ws~;6+q^F? zmHh$UydW(1)J{)b=&4zc7r3A}02+@)7VktU{YiIB`uN3>U9xG)B}XF2k&VJtF0dgM zGn9RN|7@Lr=YNNK*?)`ZV@)FLY67r)$MBX<5ko{jF+#Kjz8V?q8s@~GO+GVpcb;&F zRic7(av#s7jZbn|S#e6#PzEL)8hI1Up7?tNTcOjlOi_uZWnzp8hM4%>bC zdSAZOm$NEXeMf$n+U0y@JU|)@JeTrDrP??wJI-;finmgE(qhq6H^!byQ|#%=3HC&m zy?7Xu_ocNtx~BX6($07l}+Q58j}|ALrsP|e(zW8QpReS7A8be(`Bzu zNsJ4dLK|x$BX~D$bSWxP-x5AknkpLF=&bHfz{?937+4Tj2wu4D=Xoq> PQ`RQE-uiPo_)&fV9$!bd diff --git a/efi32/com32/rosh/rosh.c32 b/efi32/com32/rosh/rosh.c32 index b44bfa63b16d99a33e2d8813066ffcb9ef302d15..16137720dd8fdce941ab1fafcd2bb64009babdce 100755 GIT binary patch delta 1784 zcwQ~l4NO&K7zgnGgIu`EMLxWj%g2R#;llmmTL@5SY6|&*g@uTiN?R(Crc+opWw$z} zHavxU$d64|E;m?nQ@gI*#L`7tO^qh4w%T+_jfP(>G;qo3eJ1GoKu%U+#>gGkhn~NzEKbHFd+3o2ewvLj9bhD3Qg@oC_;Xaeqw&jX|4Y+y`W4*VxB zPzjLis`N&RUcfAx0gKq6vL;Rq0#<310mWd8Tg(M~;u;`Nv;alo95s)) z7N`)_^X(FOF2nQ9G)OVt_>)nXnfMG~U3fI+$8 zR%<{kRBIq~G_EU>_H%*tO|o;ZwWQ*fT1%JS9h)!==vwWVVbtkb!z8OFSvN`RByE%I z;u$s%o#ffJ3|h}CZRxa-->?-@GWXa@Xo!Ect)X{$cGA~$ktdP@bb$SK7q#evHHeqe64#w)*>T$!+ zCSuzfN7iZ+wzeg@))T(tX{#Aos%z$PiQuz;4MW!wReK~$*XD>mU0Wo&bnUfppZCLk zc7)sSsP>3M*A9iR+SFC!NL+)ieKBtE@{|*Fo+DEI#GIGrUKK4qIDE8$*voE!hB5Sm6}C4mba>9ms9JKm!o_`c%+Rq&qlWAuRi8FOhlw`RDg zlshxr6wfC!TBwJUotqr9tddDfXGi?y>LCe43!1S#-YC;G6CZQVvPL|TX{zq4)b+dc z8jGsIMZW8tPdd+Zl~WA2x(dj{hh5hwiCZ$gRLEVK74(q5%gmt^zL!}>huM>rL)*AE zD~-~)CF`(SDiQ7t5|g`|F0kQlrvYxyuA=~7%C3$MO_zKWa$-&)b?`Ge#pcoRaPjMT zM~;^q{7Fs&eZ!A(Jk-dUo+Mhw6&@#T2sL^Nh<5TGuZ!O1Uay;W^A+zZl~bRuSY@-x zH}tQtmeOsa7A)EBC5Cud1_!_m|uM2fD@> A1^@s6 delta 1788 zcwQ~l32YQ)6bJDCE8TXHmbS3lmUi3S?XqXj?P6PLi72#kYAaW%a!5d$3ZmGC62TQm zIns_Pc^qOSO2p7aRB#(55lD#@M8S{yLT@@xro{N65`%>2HYd^7Xry|?on zT-Uv>%R%isovyt8Nq}t0P``8_K`~hVa69@!M$*HDg)Wd5{>zq@Az+N>k z17>VZjL(f-zz8AD~jQx9j=5OAG~lRl(DKA%)dm-#``Z92?1lOLzSNU`}^ zVz@H|B+Uf6#71D3m;}5h)&L)f>XsjgV}XO>IG|g!0Ea~%a74@kdc;cLn3xY77psAD z%48MJ1@Q^sqL_d%F3aF);HvnnidU5Eh@*f3QQl6R0^AWzz~ACCz>qi@xGyeHFD_Y~ z4kU^yy=Ku1q=;sfEpZ`W5l4rCY#CGlHt`X_A&vniiYmoEu@EQ{mjY#Cih7RtI8Y@n z18PJS#8fdAm@du(W{7FP9B~m)FRGHy7sDAqqYR3G=f&~Ba&b1WQmhA>#U@~l=muU9 ztw5`o3ABr~z$S4y@TNE)cw5W{wu=*hPO(9iTJ)<@E5pgfs@8HMN7Y))Rkapvs@CEx zRcrB4RckR%)mogUYAr5NwH7_9)?x|JE82lR(E)rfI#mydb5#$Bs+liNLMD<6fXi~i zrFuXtRXq^dpVpN~ySc=&k#f1)5~}(`_0s8ghDHnnx;A6TFzR(}UYy1_E8?t<^J<(e zJl^V29Y5KcPc6LInn!bZgSC`we8?K20ls2gN;`OR=C|}6k7NeuefDQLXd}@wC=O=jxhiSR(lHKf}NFySzr;)EPO?d77Jm&<&rV}eHYW^IxiYt!>iM+G@hHCUJ7xSvx@HVS*M#a`L?ry_OqwJO&fSl zK`v!;bHP43$qBC25|e8e^|9e8dNN4$;+d~W3>B*!OT;;LTOOZxT38~iG=5^2;-0gLd#^=1xshs+JL6yxW zUpZ}O-RGk;{>oQEo&39Ru8KP3FH&!_++R<7_^98dqPXM_QUfOkW~z2>2n6T=Z&LeD z_)wsZF7d5^jXvWsg@ts4D+{-hiBA>=)N*s9(4JOa77P^!%Zh^`RFssJM>31nC#a<< zvaMu)BK5L6v{$VgCqiRJQ9qxpu$yAb72m9InPeU5WNW3%)T>6lJf+gB=B!ftbk-}g F{s$L^83OAzaSOp0pBx(^wtP)5esE{}! zX@wvb7J`_K`%9vj)!h?nOz9^`OCz!2?!qkZ5ij5BhAwduXi6lsTB;bLah+wCJVZ=Ix zLJA8(kqClKu+l;ZR@#ZRl~oG=F?XO@?&F_fc6T1PZ@zNJN$-r`Ac_;wf}-CQr!W~b zKpo^GjsCBSNpufd#PJj9khOb4_PrwhUGVS(Tb`n%qs69{QK|t0+!6?h@Y*PM>-Jt p_{HiTTSl^0r#G3u`w!gZ+G!v!X4vs79Bk?D{XlsA&u;fk{Q!RIT6vxk9Uc0)=E-tXJJXV%nP!vOu7GZ@{e9V}l1{ylbG};3-O>@$skXAD$ zFz`_6jFmc$$%Kv0Vwp~*<)dkua(bwLIE|(`TT_Ok7-{+b2 zvwN_vt**sssfZ;iAfmR`p`Ns!u|&3Fq8N0LjmQLCf4E;-pO_TcmAS**+Oc8`>CZU2 z`zeK#>GmU#@sJ5xp9q=6Gt~?Ht@7IoO?R!Z3^j4QDP2wHF{T+@V6t(W$*tD%0aK|u z%H0@wpW`D+)da4L7-hev?ze5=w<3b|Td?yQXm+yFcF>wjGz*NwSxR8BbtKU$t*1cu zq!P{0`XuO6(ukr>eR?eT#c-lgdOQpI73lR^mvbGm6J5}{$%LVndkkDKSe8R{K=tVh z(ZAJ4G)#}jqTfH7$lSYOGd&M(iz5o_`N!n|xQ58y@j)~Y+=+X-rR^mGHL-mG7X4RK zecv7R#l%8~O!w>m!lKhlRHO}_fW80`db0n7(B0UOQ*Y=a=#hx%Lpq{u@OKRJ&*%;2 zqyI}BXqvX4Q;&hcSwzEi$4?JzAOqto5%SY|d>QmzMR%|4L$C^~pVkX(1PkuD((l2x zWTK$9-voZ=AUdk&SH`2`U8F-mPdEUMfWgyRe+T>v5$MqR*AHxPARP6i5asCci=Z>K zHu{d@p!s&S>{V`SkLD3g36jvPY1Oo8Iy9Y{DVlE0%(1-Ll3QP))h(LaG&?n${K!u1 zutkVWZWBghzOWGUg%+ai!a)eF5U1NCL{@eP5uJU)1o#yqIxRSc3Ltyiq>%xKLcHT+ zm=J>yeJzY2`c{ZCaY~4{{F875(ODtV^qeq?=)4e#a!Htpj20s8{}dwpT|!is>q4BY zN9aTL{wIwA)SIF)$oEL06{i;>4Xr{H6`OD{0xQH5a0<&1SRsmyTj)Vxg?OXcLOiVz z!Xe0LA=WAoB7ywEdZcZMG>}DQLOiUA!bB7XA+lnc5E)t_MEQG6i0hdvOd^^uL^Z4t z;w3B+x{!dvY@($?B-jcebm39fQn>h*VJs|*UH>rx+8j*W9JfcgxIL~c z=BigZ9u9TIy{24Kdkmw(SZxk3yJ;A~V>V;;k?;>_HV0>Lt0R5ja9m*HiQ1^QL>Q__?*-2=)lk$<>s*U4)}_#HnKUmpKVFo)ePRBl!nz$B{ixBu1?NS zhxz4XkNS~!BzuM=q=}2uy?*Pi%9(%XGsz=V7e~6>u=TopF>j{IoZCFhm8T+ky(?1< z=607)C5KMAl9bBkKT?YFKfxX23`XdzAzljq6_1X;4Wm|tKZE1S#^0)DhxcOZ4PU+C z5{KisD%GRP`NdSPD(3B}l^L^pjb>hvlURdC%oSDPPAIjBM(BL6*BVYtTcj3->e7Bu z*xWp~S5=1^+_5SsMGi|BzMZ-u zid+3dOvM?%_`-isk*xSGazTbc@*(ArYRI#Ymmr%U?U2Ke3y{nCFikMs&J+)Wxop~Pd^h6*M!mj?yXqx*hM@#sKCloa+RemvlbI_Q^}G@vC#xrN&U9*g`O W6LIp-0gtI?EZ+?HR3;A{m-s)LX(0{( delta 2600 zcwSwW3s96*6vxk9Twq}Z77&(Q9t+C?DIgCuUK=PGDfK+rkFvgJ!TviXVqeI zOFTBw)J!(LoYV$eN-dnx9@bb*k8#TBNoBRolxbn9rCYB; zyJP)<_1o;0-gu%JM08*v+nt$SO;iDi!UQD{nE-pmgbZ|EJ?XdHr|biJdS_lm;lEnC z{8tB=t;cg9^^mz*Z-89GE$W_0-t5*!en(Z<=9n&<;$1YzHdB^b#HFTYwVXGarmM}o z&s3}4=QEh!&9;bI)yyps(`|rU|NsYKKDdO7sCX+%D)%l1CA5q+ceI1`qJ{$-F4g8&R( zR$+ZH<`3o(U7^?GG2c-}6g?hrG_3_k5{W|k`M03YKqe-QuTQ2}@O7l>FKsU;&=(&* zXVFiYeBm^O&%{DUP5;%+(2skFDz!l;JZ!)TEuRP&dL05v(*eB*y#Oa#GI64?KZ)l* z)d7}c{#$IQN!u^U;MGSLxjFa`P{l!sS8@G{s0gB4nT6r7A5?9ux1{{O|O3kRyc{i)c)zN&c$oGmfm&i3K^{o`XW!N*w(H)meu$4tXkQ%hC8D#CCUyZ z$M0#LtmIcM#lD)Vuv(`%SF=&GNprsDjhgM69hz%3M>G#>p3oe^ej*X?un_fsKp2Ty z9g)E-7ziyyZwepJ2ZT8YKv;+R#d;JD@@HWL z(P<(2%a{;N;GD1!wfeUVB-b#EG9&Fm)K|1Hm&hu_ZAlQKZj*&Lbh{8+OBW)0E@2E& zt`N7RKxjoN2~oTyLfn!W!Z>75=)=vakpbFOoe*tmuF#DX2ywNWgt(FOg-J+(5J9&K zQDz-N6#Eh(YHgViEpLS|mFRXMYNuC-I$kTBNpvshi$Z?Z%S0Nku@HT9lMol^0U_#a ztFVA*n=qYdhY&I-L|r~1Y$Vz#MDKb=m_@Wp=t5l!OHl*DY$78l$89`~!wWjCk47jf z2jl-xQ}~61dFovrODI#LoNv2DnRttBZps)Ax0^!Me;LN&y7*16z&7Ad;!)c!mCF5z zbx~(MGE*M>Fma1=Hk>nz`Nq2F(CQ0@;eRv1Sa&$|F@^#EwR~rCR%|g++JCg$9PqdB zrmhCc;V(h;y0~Q63Ej$Vs|C)!qS5c(IM+4a6>}(q=0`fpSJH**YZGGrh18o()#gH zs&eG0{d}{-tv=w54tJ6xQ(SyJ?sxqe+4J|j-%+T3=93N=Y|YNRD9(^)&U2ZwR1q(8 z=BgO(cjl>-;E*#-sa!smURnMcvW`6%!4rmfDLXG7lYcdgZWTHN#|!$uZ)*+hMd%yf zc-Scpt9Vw1Tg~Q086H*3eHjaKn#YY=PRUNJ{=?Dp+d{)oy6r}AblhtP|CzB&-5Tu3 z{7NCXYL`dd5?t!~MXBCkbIvnLy&D{JBcy#C=h>$WKJ0O*8~Jljjyl4ZJkKcyKbtpA zo#K!38r8Gx$S+oR^Su1)RXz{qKc)h~vVvnK^*Udi+NWj*H%uE=YAcr)tx|6CcwI&LRE5k#q?$ArgyJg=fBW}?3n@v(}dk!|P$ z%j0=zMUoZ0D;eLkG>DQ3brT<{te@q?jV-}kE#x}LLdZ(U2FP~ElaQAn??b+Zn9=KE zX23y;DZ>NInJhu2!;5>S_H4SUKo{$N7Y#t*^|gNJ`YWHDsq9dYqHFJ7Ky!~ z#%-3J4DxD>O3>d*_z{fc*IO?is&QLJ(Cb7x_@|nz$nXy~j`QYNI n<*2^ko4szcbn#){>~&k@m*2SXKCj!9Ud^9)^Hd{W^rrp;_uVdA diff --git a/efi32/com32/sysdump/sysdump.elf b/efi32/com32/sysdump/sysdump.elf dissimilarity index 64% index 34eb9f37f59f4233fa1ebccdc8a1bb61c198db9c..d1b18ffae172f3896e5dc0cbb0a8fa04a7719c18 100755 GIT binary patch delta 3918 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 delta 4051 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 Z%!Nyh#vC8RSMnz}DGjOgKC8`){vSD~nPdO} delta 48649 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 diff --git a/efi32/include/efi/efi.h b/efi32/include/efi/efi.h new file mode 100644 index 00000000..20d27408 --- /dev/null +++ b/efi32/include/efi/efi.h @@ -0,0 +1,53 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efi.h + +Abstract: + + Public EFI header files + + + +Revision History + +--*/ + +// +// Build flags on input +// EFI32 +// EFI_DEBUG - Enable debugging code +// EFI_NT_EMULATOR - Building for running under NT +// + + +#ifndef _EFI_INCLUDE_ +#define _EFI_INCLUDE_ + +#define EFI_FIRMWARE_VENDOR L"INTEL" +#define EFI_FIRMWARE_MAJOR_REVISION 12 +#define EFI_FIRMWARE_MINOR_REVISION 33 +#define EFI_FIRMWARE_REVISION ((EFI_FIRMWARE_MAJOR_REVISION <<16) | (EFI_FIRMWARE_MINOR_REVISION)) + +#include "efibind.h" +#include "efidef.h" +#include "efidevp.h" +#include "efipciio.h" +#include "efiprot.h" +#include "eficon.h" +#include "efiser.h" +#include "efi_nii.h" +#include "efipxebc.h" +#include "efinet.h" +#include "efiapi.h" +#include "efifs.h" +#include "efierr.h" +#include "efiui.h" +#include "efiip.h" +#include "efiudp.h" +#include "efitcp.h" + +#endif diff --git a/efi32/include/efi/efi_nii.h b/efi32/include/efi/efi_nii.h new file mode 100644 index 00000000..ba7a5b2c --- /dev/null +++ b/efi32/include/efi/efi_nii.h @@ -0,0 +1,74 @@ +#ifndef _EFI_NII_H +#define _EFI_NII_H + +/*++ +Copyright (c) 2000 Intel Corporation + +Module name: + efi_nii.h + +Abstract: + +Revision history: + 2000-Feb-18 M(f)J GUID updated. + Structure order changed for machine word alignment. + Added StringId[4] to structure. + + 2000-Feb-14 M(f)J Genesis. +--*/ + +#define EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL \ + { 0xE18541CD, 0xF755, 0x4f73, {0x92, 0x8D, 0x64, 0x3C, 0x8A, 0x79, 0xB2, 0x29} } + +#define EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE_REVISION 0x00010000 + +typedef enum { + EfiNetworkInterfaceUndi = 1 +} EFI_NETWORK_INTERFACE_TYPE; + +typedef struct { + + UINT64 Revision; + // Revision of the network interface identifier protocol interface. + + UINT64 ID; + // Address of the first byte of the identifying structure for this + // network interface. This is set to zero if there is no structure. + // + // For PXE/UNDI this is the first byte of the !PXE structure. + + UINT64 ImageAddr; + // Address of the UNrelocated driver/ROM image. This is set + // to zero if there is no driver/ROM image. + // + // For 16-bit UNDI, this is the first byte of the option ROM in + // upper memory. + // + // For 32/64-bit S/W UNDI, this is the first byte of the EFI ROM + // image. + // + // For H/W UNDI, this is set to zero. + + UINT32 ImageSize; + // Size of the UNrelocated driver/ROM image of this network interface. + // This is set to zero if there is no driver/ROM image. + + CHAR8 StringId[4]; + // 4 char ASCII string to go in class identifier (option 60) in DHCP + // and Boot Server discover packets. + // For EfiNetworkInterfaceUndi this field is "UNDI". + // For EfiNetworkInterfaceSnp this field is "SNPN". + + UINT8 Type; + UINT8 MajorVer; + UINT8 MinorVer; + // Information to be placed into the PXE DHCP and Discover packets. + // This is the network interface type and version number that will + // be placed into DHCP option 94 (client network interface identifier). + BOOLEAN Ipv6Supported; + UINT8 IfNum; // interface number to be used with pxeid structure +} EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE; + +extern EFI_GUID NetworkInterfaceIdentifierProtocol; + +#endif // _EFI_NII_H diff --git a/efi32/include/efi/efi_pxe.h b/efi32/include/efi/efi_pxe.h new file mode 100644 index 00000000..d24251f5 --- /dev/null +++ b/efi32/include/efi/efi_pxe.h @@ -0,0 +1,1743 @@ +#ifndef _EFI_PXE_H +#define _EFI_PXE_H + + +/*++ +Copyright (c) Intel 1999 + +Module name: + efi_pxe.h + +32/64-bit PXE specification: + alpha-4, 99-Dec-17 + +Abstract: + This header file contains all of the PXE type definitions, + structure prototypes, global variables and constants that + are needed for porting PXE to EFI. +--*/ + +#pragma pack(1) + +#define PXE_INTEL_ORDER 1 // Intel order +//#define PXE_NETWORK_ORDER 1 // network order + +#define PXE_UINT64_SUPPORT 1 // UINT64 supported +//#define PXE_NO_UINT64_SUPPORT 1 // UINT64 not supported + +#define PXE_BUSTYPE(a,b,c,d) \ +((((PXE_UINT32)(d) & 0xFF) << 24) | \ +(((PXE_UINT32)(c) & 0xFF) << 16) | \ +(((PXE_UINT32)(b) & 0xFF) << 8) | \ +((PXE_UINT32)(a) & 0xFF)) + +// +// UNDI ROM ID and devive ID signature +// +#define PXE_BUSTYPE_PXE PXE_BUSTYPE('!', 'P', 'X', 'E') + +// +// BUS ROM ID signatures +// +#define PXE_BUSTYPE_PCI PXE_BUSTYPE('P', 'C', 'I', 'R') +#define PXE_BUSTYPE_PC_CARD PXE_BUSTYPE('P', 'C', 'C', 'R') +#define PXE_BUSTYPE_USB PXE_BUSTYPE('U', 'S', 'B', 'R') +#define PXE_BUSTYPE_1394 PXE_BUSTYPE('1', '3', '9', '4') + +#define PXE_SWAP_UINT16(n) \ +((((PXE_UINT16)(n) & 0x00FF) << 8) | \ +(((PXE_UINT16)(n) & 0xFF00) >> 8)) + +#define PXE_SWAP_UINT32(n) \ +((((PXE_UINT32)(n) & 0x000000FF) << 24) | \ +(((PXE_UINT32)(n) & 0x0000FF00) << 8) | \ +(((PXE_UINT32)(n) & 0x00FF0000) >> 8) | \ +(((PXE_UINT32)(n) & 0xFF000000) >> 24)) + +#if PXE_UINT64_SUPPORT != 0 +#define PXE_SWAP_UINT64(n) \ +((((PXE_UINT64)(n) & 0x00000000000000FF) << 56) | \ +(((PXE_UINT64)(n) & 0x000000000000FF00) << 40) | \ +(((PXE_UINT64)(n) & 0x0000000000FF0000) << 24) | \ +(((PXE_UINT64)(n) & 0x00000000FF000000) << 8) | \ +(((PXE_UINT64)(n) & 0x000000FF00000000) >> 8) | \ +(((PXE_UINT64)(n) & 0x0000FF0000000000) >> 24) | \ +(((PXE_UINT64)(n) & 0x00FF000000000000) >> 40) | \ +(((PXE_UINT64)(n) & 0xFF00000000000000) >> 56)) +#endif // PXE_UINT64_SUPPORT + +#if PXE_NO_UINT64_SUPPORT != 0 +#define PXE_SWAP_UINT64(n) \ +{ \ +PXE_UINT32 tmp = (PXE_UINT64)(n)[1]; \ +(PXE_UINT64)(n)[1] = PXE_SWAP_UINT32((PXE_UINT64)(n)[0]); \ +(PXE_UINT64)(n)[0] = tmp; \ +} +#endif // PXE_NO_UINT64_SUPPORT + +#define PXE_CPBSIZE_NOT_USED 0 // zero +#define PXE_DBSIZE_NOT_USED 0 // zero +#define PXE_CPBADDR_NOT_USED (PXE_UINT64)0 // zero +#define PXE_DBADDR_NOT_USED (PXE_UINT64)0 // zero + +#define PXE_CONST const + +#define PXE_VOLATILE volatile + +typedef void PXE_VOID; + +typedef unsigned char PXE_UINT8; + +typedef unsigned short PXE_UINT16; + +typedef unsigned PXE_UINT32; + +#if PXE_UINT64_SUPPORT != 0 +// typedef unsigned long PXE_UINT64; +typedef UINT64 PXE_UINT64; +#endif // PXE_UINT64_SUPPORT + +#if PXE_NO_UINT64_SUPPORT != 0 +typedef PXE_UINT32 PXE_UINT64[2]; +#endif // PXE_NO_UINT64_SUPPORT + +typedef unsigned PXE_UINTN; + +typedef PXE_UINT8 PXE_BOOL; + +#define PXE_FALSE 0 // zero +#define PXE_TRUE (!PXE_FALSE) + +typedef PXE_UINT16 PXE_OPCODE; + +// +// Return UNDI operational state. +// +#define PXE_OPCODE_GET_STATE 0x0000 + +// +// Change UNDI operational state from Stopped to Started. +// +#define PXE_OPCODE_START 0x0001 + +// +// Change UNDI operational state from Started to Stopped. +// +#define PXE_OPCODE_STOP 0x0002 + +// +// Get UNDI initialization information. +// +#define PXE_OPCODE_GET_INIT_INFO 0x0003 + +// +// Get NIC configuration information. +// +#define PXE_OPCODE_GET_CONFIG_INFO 0x0004 + +// +// Changed UNDI operational state from Started to Initialized. +// +#define PXE_OPCODE_INITIALIZE 0x0005 + +// +// Re-initialize the NIC H/W. +// +#define PXE_OPCODE_RESET 0x0006 + +// +// Change the UNDI operational state from Initialized to Started. +// +#define PXE_OPCODE_SHUTDOWN 0x0007 + +// +// Read & change state of external interrupt enables. +// +#define PXE_OPCODE_INTERRUPT_ENABLES 0x0008 + +// +// Read & change state of packet receive filters. +// +#define PXE_OPCODE_RECEIVE_FILTERS 0x0009 + +// +// Read & change station MAC address. +// +#define PXE_OPCODE_STATION_ADDRESS 0x000A + +// +// Read traffic statistics. +// +#define PXE_OPCODE_STATISTICS 0x000B + +// +// Convert multicast IP address to multicast MAC address. +// +#define PXE_OPCODE_MCAST_IP_TO_MAC 0x000C + +// +// Read or change non-volatile storage on the NIC. +// +#define PXE_OPCODE_NVDATA 0x000D + +// +// Get & clear interrupt status. +// +#define PXE_OPCODE_GET_STATUS 0x000E + +// +// Fill media header in packet for transmit. +// +#define PXE_OPCODE_FILL_HEADER 0x000F + +// +// Transmit packet(s). +// +#define PXE_OPCODE_TRANSMIT 0x0010 + +// +// Receive packet. +// +#define PXE_OPCODE_RECEIVE 0x0011 + +// last valid opcode: +#define PXE_OPCODE_VALID_MAX 0x0011 + +// +// Last valid PXE UNDI OpCode number. +// +#define PXE_OPCODE_LAST_VALID 0x0011 + +typedef PXE_UINT16 PXE_OPFLAGS; + +#define PXE_OPFLAGS_NOT_USED 0x0000 + +//////////////////////////////////////// +// UNDI Get State +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Start +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Stop +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Get Init Info +// + +// No Opflags + +//////////////////////////////////////// +// UNDI Get Config Info +// + +// No Opflags + +//////////////////////////////////////// +// UNDI Initialize +// + +#define PXE_OPFLAGS_INITIALIZE_CABLE_DETECT_MASK 0x0001 +#define PXE_OPFLAGS_INITIALIZE_DETECT_CABLE 0x0000 +#define PXE_OPFLAGS_INITIALIZE_DO_NOT_DETECT_CABLE 0x0001 + +//////////////////////////////////////// +// UNDI Reset +// + +#define PXE_OPFLAGS_RESET_DISABLE_INTERRUPTS 0x0001 +#define PXE_OPFLAGS_RESET_DISABLE_FILTERS 0x0002 + +//////////////////////////////////////// +// UNDI Shutdown +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Interrupt Enables +// + +// +// Select whether to enable or disable external interrupt signals. +// Setting both enable and disable will return PXE_STATCODE_INVALID_OPFLAGS. +// +#define PXE_OPFLAGS_INTERRUPT_OPMASK 0xC000 +#define PXE_OPFLAGS_INTERRUPT_ENABLE 0x8000 +#define PXE_OPFLAGS_INTERRUPT_DISABLE 0x4000 +#define PXE_OPFLAGS_INTERRUPT_READ 0x0000 + +// +// Enable receive interrupts. An external interrupt will be generated +// after a complete non-error packet has been received. +// +#define PXE_OPFLAGS_INTERRUPT_RECEIVE 0x0001 + +// +// Enable transmit interrupts. An external interrupt will be generated +// after a complete non-error packet has been transmitted. +// +#define PXE_OPFLAGS_INTERRUPT_TRANSMIT 0x0002 + +// +// Enable command interrupts. An external interrupt will be generated +// when command execution stops. +// +#define PXE_OPFLAGS_INTERRUPT_COMMAND 0x0004 + +// +// Generate software interrupt. Setting this bit generates an external +// interrupt, if it is supported by the hardware. +// +#define PXE_OPFLAGS_INTERRUPT_SOFTWARE 0x0008 + +//////////////////////////////////////// +// UNDI Receive Filters +// + +// +// Select whether to enable or disable receive filters. +// Setting both enable and disable will return PXE_STATCODE_INVALID_OPCODE. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_OPMASK 0xC000 +#define PXE_OPFLAGS_RECEIVE_FILTER_ENABLE 0x8000 +#define PXE_OPFLAGS_RECEIVE_FILTER_DISABLE 0x4000 +#define PXE_OPFLAGS_RECEIVE_FILTER_READ 0x0000 + +// +// To reset the contents of the multicast MAC address filter list, +// set this OpFlag: +// +#define PXE_OPFLAGS_RECEIVE_FILTER_RESET_MCAST_LIST 0x2000 + +// +// Enable unicast packet receiving. Packets sent to the current station +// MAC address will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_UNICAST 0x0001 + +// +// Enable broadcast packet receiving. Packets sent to the broadcast +// MAC address will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_BROADCAST 0x0002 + +// +// Enable filtered multicast packet receiving. Packets sent to any +// of the multicast MAC addresses in the multicast MAC address filter +// list will be received. If the filter list is empty, no multicast +// +#define PXE_OPFLAGS_RECEIVE_FILTER_FILTERED_MULTICAST 0x0004 + +// +// Enable promiscuous packet receiving. All packets will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_PROMISCUOUS 0x0008 + +// +// Enable promiscuous multicast packet receiving. All multicast +// packets will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010 + +//////////////////////////////////////// +// UNDI Station Address +// + +#define PXE_OPFLAGS_STATION_ADDRESS_READ 0x0000 +#define PXE_OPFLAGS_STATION_ADDRESS_RESET 0x0001 + +//////////////////////////////////////// +// UNDI Statistics +// + +#define PXE_OPFLAGS_STATISTICS_READ 0x0000 +#define PXE_OPFLAGS_STATISTICS_RESET 0x0001 + +//////////////////////////////////////// +// UNDI MCast IP to MAC +// + +// +// Identify the type of IP address in the CPB. +// +#define PXE_OPFLAGS_MCAST_IP_TO_MAC_OPMASK 0x0003 +#define PXE_OPFLAGS_MCAST_IPV4_TO_MAC 0x0000 +#define PXE_OPFLAGS_MCAST_IPV6_TO_MAC 0x0001 + +//////////////////////////////////////// +// UNDI NvData +// + +// +// Select the type of non-volatile data operation. +// +#define PXE_OPFLAGS_NVDATA_OPMASK 0x0001 +#define PXE_OPFLAGS_NVDATA_READ 0x0000 +#define PXE_OPFLAGS_NVDATA_WRITE 0x0001 + +//////////////////////////////////////// +// UNDI Get Status +// + +// +// Return current interrupt status. This will also clear any interrupts +// that are currently set. This can be used in a polling routine. The +// interrupt flags are still set and cleared even when the interrupts +// are disabled. +// +#define PXE_OPFLAGS_GET_INTERRUPT_STATUS 0x0001 + +// +// Return list of transmitted buffers for recycling. Transmit buffers +// must not be changed or unallocated until they have recycled. After +// issuing a transmit command, wait for a transmit complete interrupt. +// When a transmit complete interrupt is received, read the transmitted +// buffers. Do not plan on getting one buffer per interrupt. Some +// NICs and UNDIs may transmit multiple buffers per interrupt. +// +#define PXE_OPFLAGS_GET_TRANSMITTED_BUFFERS 0x0002 + +//////////////////////////////////////// +// UNDI Fill Header +// + +#define PXE_OPFLAGS_FILL_HEADER_OPMASK 0x0001 +#define PXE_OPFLAGS_FILL_HEADER_FRAGMENTED 0x0001 +#define PXE_OPFLAGS_FILL_HEADER_WHOLE 0x0000 + +//////////////////////////////////////// +// UNDI Transmit +// + +// +// S/W UNDI only. Return after the packet has been transmitted. A +// transmit complete interrupt will still be generated and the transmit +// buffer will have to be recycled. +// +#define PXE_OPFLAGS_SWUNDI_TRANSMIT_OPMASK 0x0001 +#define PXE_OPFLAGS_TRANSMIT_BLOCK 0x0001 +#define PXE_OPFLAGS_TRANSMIT_DONT_BLOCK 0x0000 + +// +// +// +#define PXE_OPFLAGS_TRANSMIT_OPMASK 0x0002 +#define PXE_OPFLAGS_TRANSMIT_FRAGMENTED 0x0002 +#define PXE_OPFLAGS_TRANSMIT_WHOLE 0x0000 + +//////////////////////////////////////// +// UNDI Receive +// + +// No OpFlags + +typedef PXE_UINT16 PXE_STATFLAGS; + +#define PXE_STATFLAGS_INITIALIZE 0x0000 + +//////////////////////////////////////// +// Common StatFlags that can be returned by all commands. +// + +// +// The COMMAND_COMPLETE and COMMAND_FAILED status flags must be +// implemented by all UNDIs. COMMAND_QUEUED is only needed by UNDIs +// that support command queuing. +// +#define PXE_STATFLAGS_STATUS_MASK 0xC000 +#define PXE_STATFLAGS_COMMAND_COMPLETE 0xC000 +#define PXE_STATFLAGS_COMMAND_FAILED 0x8000 +#define PXE_STATFLAGS_COMMAND_QUEUED 0x4000 +//#define PXE_STATFLAGS_INITIALIZE 0x0000 + +#define PXE_STATFLAGS_DB_WRITE_TRUNCATED 0x2000 + +//////////////////////////////////////// +// UNDI Get State +// + +#define PXE_STATFLAGS_GET_STATE_MASK 0x0003 +#define PXE_STATFLAGS_GET_STATE_INITIALIZED 0x0002 +#define PXE_STATFLAGS_GET_STATE_STARTED 0x0001 +#define PXE_STATFLAGS_GET_STATE_STOPPED 0x0000 + +//////////////////////////////////////// +// UNDI Start +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Get Init Info +// + +#define PXE_STATFLAGS_CABLE_DETECT_MASK 0x0001 +#define PXE_STATFLAGS_CABLE_DETECT_NOT_SUPPORTED 0x0000 +#define PXE_STATFLAGS_CABLE_DETECT_SUPPORTED 0x0001 + + +//////////////////////////////////////// +// UNDI Initialize +// + +#define PXE_STATFLAGS_INITIALIZED_NO_MEDIA 0x0001 + +//////////////////////////////////////// +// UNDI Reset +// + +#define PXE_STATFLAGS_RESET_NO_MEDIA 0x0001 + +//////////////////////////////////////// +// UNDI Shutdown +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Interrupt Enables +// + +// +// If set, receive interrupts are enabled. +// +#define PXE_STATFLAGS_INTERRUPT_RECEIVE 0x0001 + +// +// If set, transmit interrupts are enabled. +// +#define PXE_STATFLAGS_INTERRUPT_TRANSMIT 0x0002 + +// +// If set, command interrupts are enabled. +// +#define PXE_STATFLAGS_INTERRUPT_COMMAND 0x0004 + + +//////////////////////////////////////// +// UNDI Receive Filters +// + +// +// If set, unicast packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_UNICAST 0x0001 + +// +// If set, broadcast packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_BROADCAST 0x0002 + +// +// If set, multicast packets that match up with the multicast address +// filter list will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_FILTERED_MULTICAST 0x0004 + +// +// If set, all packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_PROMISCUOUS 0x0008 + +// +// If set, all multicast packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010 + +//////////////////////////////////////// +// UNDI Station Address +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Statistics +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI MCast IP to MAC +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI NvData +// + +// No additional StatFlags + + +//////////////////////////////////////// +// UNDI Get Status +// + +// +// Use to determine if an interrupt has occurred. +// +#define PXE_STATFLAGS_GET_STATUS_INTERRUPT_MASK 0x000F +#define PXE_STATFLAGS_GET_STATUS_NO_INTERRUPTS 0x0000 + +// +// If set, at least one receive interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_RECEIVE 0x0001 + +// +// If set, at least one transmit interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_TRANSMIT 0x0002 + +// +// If set, at least one command interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_COMMAND 0x0004 + +// +// If set, at least one software interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_SOFTWARE 0x0008 + +// +// This flag is set if the transmitted buffer queue is empty. This flag +// will be set if all transmitted buffer addresses get written into the DB. +// +#define PXE_STATFLAGS_GET_STATUS_TXBUF_QUEUE_EMPTY 0x0010 + +// +// This flag is set if no transmitted buffer addresses were written +// into the DB. (This could be because DBsize was too small.) +// +#define PXE_STATFLAGS_GET_STATUS_NO_TXBUFS_WRITTEN 0x0020 + +//////////////////////////////////////// +// UNDI Fill Header +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Transmit +// + +// No additional StatFlags. + +//////////////////////////////////////// +// UNDI Receive +// + +// No additional StatFlags. + +typedef PXE_UINT16 PXE_STATCODE; + +#define PXE_STATCODE_INITIALIZE 0x0000 + +//////////////////////////////////////// +// Common StatCodes returned by all UNDI commands, UNDI protocol functions +// and BC protocol functions. +// + +#define PXE_STATCODE_SUCCESS 0x0000 + +#define PXE_STATCODE_INVALID_CDB 0x0001 +#define PXE_STATCODE_INVALID_CPB 0x0002 +#define PXE_STATCODE_BUSY 0x0003 +#define PXE_STATCODE_QUEUE_FULL 0x0004 +#define PXE_STATCODE_ALREADY_STARTED 0x0005 +#define PXE_STATCODE_NOT_STARTED 0x0006 +#define PXE_STATCODE_NOT_SHUTDOWN 0x0007 +#define PXE_STATCODE_ALREADY_INITIALIZED 0x0008 +#define PXE_STATCODE_NOT_INITIALIZED 0x0009 +#define PXE_STATCODE_DEVICE_FAILURE 0x000A +#define PXE_STATCODE_NVDATA_FAILURE 0x000B +#define PXE_STATCODE_UNSUPPORTED 0x000C +#define PXE_STATCODE_BUFFER_FULL 0x000D +#define PXE_STATCODE_INVALID_PARAMETER 0x000E +#define PXE_STATCODE_INVALID_UNDI 0x000F +#define PXE_STATCODE_IPV4_NOT_SUPPORTED 0x0010 +#define PXE_STATCODE_IPV6_NOT_SUPPORTED 0x0011 +#define PXE_STATCODE_NOT_ENOUGH_MEMORY 0x0012 +#define PXE_STATCODE_NO_DATA 0x0013 + + +typedef PXE_UINT16 PXE_IFNUM; + +// +// This interface number must be passed to the S/W UNDI Start command. +// +#define PXE_IFNUM_START 0x0000 + +// +// This interface number is returned by the S/W UNDI Get State and +// Start commands if information in the CDB, CPB or DB is invalid. +// +#define PXE_IFNUM_INVALID 0x0000 + +typedef PXE_UINT16 PXE_CONTROL; + +// +// Setting this flag directs the UNDI to queue this command for later +// execution if the UNDI is busy and it supports command queuing. +// If queuing is not supported, a PXE_STATCODE_INVALID_CONTROL error +// is returned. If the queue is full, a PXE_STATCODE_CDB_QUEUE_FULL +// error is returned. +// +#define PXE_CONTROL_QUEUE_IF_BUSY 0x0002 + +// +// These two bit values are used to determine if there are more UNDI +// CDB structures following this one. If the link bit is set, there +// must be a CDB structure following this one. Execution will start +// on the next CDB structure as soon as this one completes successfully. +// If an error is generated by this command, execution will stop. +// +#define PXE_CONTROL_LINK 0x0001 +#define PXE_CONTROL_LAST_CDB_IN_LIST 0x0000 + +typedef PXE_UINT8 PXE_FRAME_TYPE; + +#define PXE_FRAME_TYPE_NONE 0x00 +#define PXE_FRAME_TYPE_UNICAST 0x01 +#define PXE_FRAME_TYPE_BROADCAST 0x02 +#define PXE_FRAME_TYPE_MULTICAST 0x03 +#define PXE_FRAME_TYPE_PROMISCUOUS 0x04 + +typedef PXE_UINT32 PXE_IPV4; + +typedef PXE_UINT32 PXE_IPV6[4]; +#define PXE_MAC_LENGTH 32 + +typedef PXE_UINT8 PXE_MAC_ADDR[PXE_MAC_LENGTH]; + +typedef PXE_UINT8 PXE_IFTYPE; +typedef PXE_UINT16 PXE_MEDIA_PROTOCOL; + +// +// This information is from the ARP section of RFC 1700. +// +// 1 Ethernet (10Mb) [JBP] +// 2 Experimental Ethernet (3Mb) [JBP] +// 3 Amateur Radio AX.25 [PXK] +// 4 Proteon ProNET Token Ring [JBP] +// 5 Chaos [GXP] +// 6 IEEE 802 Networks [JBP] +// 7 ARCNET [JBP] +// 8 Hyperchannel [JBP] +// 9 Lanstar [TU] +// 10 Autonet Short Address [MXB1] +// 11 LocalTalk [JKR1] +// 12 LocalNet (IBM PCNet or SYTEK LocalNET) [JXM] +// 13 Ultra link [RXD2] +// 14 SMDS [GXC1] +// 15 Frame Relay [AGM] +// 16 Asynchronous Transmission Mode (ATM) [JXB2] +// 17 HDLC [JBP] +// 18 Fibre Channel [Yakov Rekhter] +// 19 Asynchronous Transmission Mode (ATM) [Mark Laubach] +// 20 Serial Line [JBP] +// 21 Asynchronous Transmission Mode (ATM) [MXB1] +// + +#define PXE_IFTYPE_ETHERNET 0x01 +#define PXE_IFTYPE_TOKENRING 0x04 +#define PXE_IFTYPE_FIBRE_CHANNEL 0x12 + +typedef struct s_pxe_hw_undi { +PXE_UINT32 Signature; // PXE_ROMID_SIGNATURE +PXE_UINT8 Len; // sizeof(PXE_HW_UNDI) +PXE_UINT8 Fudge; // makes 8-bit cksum equal zero +PXE_UINT8 Rev; // PXE_ROMID_REV +PXE_UINT8 IFcnt; // physical connector count +PXE_UINT8 MajorVer; // PXE_ROMID_MAJORVER +PXE_UINT8 MinorVer; // PXE_ROMID_MINORVER +PXE_UINT16 reserved; // zero, not used +PXE_UINT32 Implementation; // implementation flags +// reserved // vendor use +// PXE_UINT32 Status; // status port +// PXE_UINT32 Command; // command port +// PXE_UINT64 CDBaddr; // CDB address port +} PXE_HW_UNDI; + +// +// Status port bit definitions +// + +// +// UNDI operation state +// +#define PXE_HWSTAT_STATE_MASK 0xC0000000 +#define PXE_HWSTAT_BUSY 0xC0000000 +#define PXE_HWSTAT_INITIALIZED 0x80000000 +#define PXE_HWSTAT_STARTED 0x40000000 +#define PXE_HWSTAT_STOPPED 0x00000000 + +// +// If set, last command failed +// +#define PXE_HWSTAT_COMMAND_FAILED 0x20000000 + +// +// If set, identifies enabled receive filters +// +#define PXE_HWSTAT_PROMISCUOUS_MULTICAST_RX_ENABLED 0x00001000 +#define PXE_HWSTAT_PROMISCUOUS_RX_ENABLED 0x00000800 +#define PXE_HWSTAT_BROADCAST_RX_ENABLED 0x00000400 +#define PXE_HWSTAT_MULTICAST_RX_ENABLED 0x00000200 +#define PXE_HWSTAT_UNICAST_RX_ENABLED 0x00000100 + +// +// If set, identifies enabled external interrupts +// +#define PXE_HWSTAT_SOFTWARE_INT_ENABLED 0x00000080 +#define PXE_HWSTAT_TX_COMPLETE_INT_ENABLED 0x00000040 +#define PXE_HWSTAT_PACKET_RX_INT_ENABLED 0x00000020 +#define PXE_HWSTAT_CMD_COMPLETE_INT_ENABLED 0x00000010 + +// +// If set, identifies pending interrupts +// +#define PXE_HWSTAT_SOFTWARE_INT_PENDING 0x00000008 +#define PXE_HWSTAT_TX_COMPLETE_INT_PENDING 0x00000004 +#define PXE_HWSTAT_PACKET_RX_INT_PENDING 0x00000002 +#define PXE_HWSTAT_CMD_COMPLETE_INT_PENDING 0x00000001 + +// +// Command port definitions +// + +// +// If set, CDB identified in CDBaddr port is given to UNDI. +// If not set, other bits in this word will be processed. +// +#define PXE_HWCMD_ISSUE_COMMAND 0x80000000 +#define PXE_HWCMD_INTS_AND_FILTS 0x00000000 + +// +// Use these to enable/disable receive filters. +// +#define PXE_HWCMD_PROMISCUOUS_MULTICAST_RX_ENABLE 0x00001000 +#define PXE_HWCMD_PROMISCUOUS_RX_ENABLE 0x00000800 +#define PXE_HWCMD_BROADCAST_RX_ENABLE 0x00000400 +#define PXE_HWCMD_MULTICAST_RX_ENABLE 0x00000200 +#define PXE_HWCMD_UNICAST_RX_ENABLE 0x00000100 + +// +// Use these to enable/disable external interrupts +// +#define PXE_HWCMD_SOFTWARE_INT_ENABLE 0x00000080 +#define PXE_HWCMD_TX_COMPLETE_INT_ENABLE 0x00000040 +#define PXE_HWCMD_PACKET_RX_INT_ENABLE 0x00000020 +#define PXE_HWCMD_CMD_COMPLETE_INT_ENABLE 0x00000010 + +// +// Use these to clear pending external interrupts +// +#define PXE_HWCMD_CLEAR_SOFTWARE_INT 0x00000008 +#define PXE_HWCMD_CLEAR_TX_COMPLETE_INT 0x00000004 +#define PXE_HWCMD_CLEAR_PACKET_RX_INT 0x00000002 +#define PXE_HWCMD_CLEAR_CMD_COMPLETE_INT 0x00000001 + +typedef struct s_pxe_sw_undi { +PXE_UINT32 Signature; // PXE_ROMID_SIGNATURE +PXE_UINT8 Len; // sizeof(PXE_SW_UNDI) +PXE_UINT8 Fudge; // makes 8-bit cksum zero +PXE_UINT8 Rev; // PXE_ROMID_REV +PXE_UINT8 IFcnt; // physical connector count +PXE_UINT8 MajorVer; // PXE_ROMID_MAJORVER +PXE_UINT8 MinorVer; // PXE_ROMID_MINORVER +PXE_UINT16 reserved1; // zero, not used +PXE_UINT32 Implementation; // Implementation flags +PXE_UINT64 EntryPoint; // API entry point +PXE_UINT8 reserved2[3]; // zero, not used +PXE_UINT8 BusCnt; // number of bustypes supported +PXE_UINT32 BusType[1]; // list of supported bustypes +} PXE_SW_UNDI; + +typedef union u_pxe_undi { +PXE_HW_UNDI hw; +PXE_SW_UNDI sw; +} PXE_UNDI; + +// +// Signature of !PXE structure +// +#define PXE_ROMID_SIGNATURE PXE_BUSTYPE('!', 'P', 'X', 'E') + +// +// !PXE structure format revision +// +#define PXE_ROMID_REV 0x02 + +// +// UNDI command interface revision. These are the values that get sent +// in option 94 (Client Network Interface Identifier) in the DHCP Discover +// and PXE Boot Server Request packets. +// +#define PXE_ROMID_MAJORVER 0x03 +#define PXE_ROMID_MINORVER 0x00 + +// +// Implementation flags +// +#define PXE_ROMID_IMP_HW_UNDI 0x80000000 +#define PXE_ROMID_IMP_SW_VIRT_ADDR 0x40000000 +#define PXE_ROMID_IMP_64BIT_DEVICE 0x00010000 +#define PXE_ROMID_IMP_FRAG_SUPPORTED 0x00008000 +#define PXE_ROMID_IMP_CMD_LINK_SUPPORTED 0x00004000 +#define PXE_ROMID_IMP_CMD_QUEUE_SUPPORTED 0x00002000 +#define PXE_ROMID_IMP_MULTI_FRAME_SUPPORTED 0x00001000 +#define PXE_ROMID_IMP_NVDATA_SUPPORT_MASK 0x00000C00 +#define PXE_ROMID_IMP_NVDATA_BULK_WRITABLE 0x00000C00 +#define PXE_ROMID_IMP_NVDATA_SPARSE_WRITABLE 0x00000800 +#define PXE_ROMID_IMP_NVDATA_READ_ONLY 0x00000400 +#define PXE_ROMID_IMP_NVDATA_NOT_AVAILABLE 0x00000000 +#define PXE_ROMID_IMP_STATISTICS_SUPPORTED 0x00000200 +#define PXE_ROMID_IMP_STATION_ADDR_SETTABLE 0x00000100 +#define PXE_ROMID_IMP_PROMISCUOUS_MULTICAST_RX_SUPPORTED 0x00000080 +#define PXE_ROMID_IMP_PROMISCUOUS_RX_SUPPORTED 0x00000040 +#define PXE_ROMID_IMP_BROADCAST_RX_SUPPORTED 0x00000020 +#define PXE_ROMID_IMP_FILTERED_MULTICAST_RX_SUPPORTED 0x00000010 +#define PXE_ROMID_IMP_SOFTWARE_INT_SUPPORTED 0x00000008 +#define PXE_ROMID_IMP_TX_COMPLETE_INT_SUPPORTED 0x00000004 +#define PXE_ROMID_IMP_PACKET_RX_INT_SUPPORTED 0x00000002 +#define PXE_ROMID_IMP_CMD_COMPLETE_INT_SUPPORTED 0x00000001 + + +typedef struct s_pxe_cdb { +PXE_OPCODE OpCode; +PXE_OPFLAGS OpFlags; +PXE_UINT16 CPBsize; +PXE_UINT16 DBsize; +UINT64 CPBaddr; +UINT64 DBaddr; +PXE_STATCODE StatCode; +PXE_STATFLAGS StatFlags; +PXE_UINT16 IFnum; +PXE_CONTROL Control; +} PXE_CDB; + + +typedef union u_pxe_ip_addr { +PXE_IPV6 IPv6; +PXE_IPV4 IPv4; +} PXE_IP_ADDR; + +typedef union pxe_device { +// +// PCI and PC Card NICs are both identified using bus, device +// and function numbers. For PC Card, this may require PC +// Card services to be loaded in the BIOS or preboot +// environment. +// +struct { +// +// See S/W UNDI ROMID structure definition for PCI and +// PCC BusType definitions. +// +PXE_UINT32 BusType; + +// +// Bus, device & function numbers that locate this device. +// +PXE_UINT16 Bus; +PXE_UINT8 Device; +PXE_UINT8 Function; +} PCI, PCC; + +// +// %%TBD - More information is needed about enumerating +// USB and 1394 devices. +// +struct { +PXE_UINT32 BusType; +PXE_UINT32 tdb; +} USB, _1394; +} PXE_DEVICE; + +// cpb and db definitions + +#define MAX_PCI_CONFIG_LEN 64 // # of dwords +#define MAX_EEPROM_LEN 128 // #of dwords +#define MAX_XMIT_BUFFERS 32 // recycling Q length for xmit_done +#define MAX_MCAST_ADDRESS_CNT 8 + +typedef struct s_pxe_cpb_start { + // + // PXE_VOID Delay(PXE_UINT64 microseconds); + // + // UNDI will never request a delay smaller than 10 microseconds + // and will always request delays in increments of 10 microseconds. + // The Delay() CallBack routine must delay between n and n + 10 + // microseconds before returning control to the UNDI. + // + // This field cannot be set to zero. + // + PXE_UINT64 Delay; + + // + // PXE_VOID Block(PXE_UINT32 enable); + // + // UNDI may need to block multi-threaded/multi-processor access to + // critical code sections when programming or accessing the network + // device. To this end, a blocking service is needed by the UNDI. + // When UNDI needs a block, it will call Block() passing a non-zero + // value. When UNDI no longer needs a block, it will call Block() + // with a zero value. When called, if the Block() is already enabled, + // do not return control to the UNDI until the previous Block() is + // disabled. + // + // This field cannot be set to zero. + // + PXE_UINT64 Block; + + // + // PXE_VOID Virt2Phys(PXE_UINT64 virtual, PXE_UINT64 physical_ptr); + // + // UNDI will pass the virtual address of a buffer and the virtual + // address of a 64-bit physical buffer. Convert the virtual address + // to a physical address and write the result to the physical address + // buffer. If virtual and physical addresses are the same, just + // copy the virtual address to the physical address buffer. + // + // This field can be set to zero if virtual and physical addresses + // are equal. + // + PXE_UINT64 Virt2Phys; + // + // PXE_VOID Mem_IO(PXE_UINT8 read_write, PXE_UINT8 len, PXE_UINT64 port, + // PXE_UINT64 buf_addr); + // + // UNDI will read or write the device io space using this call back + // function. It passes the number of bytes as the len parameter and it + // will be either 1,2,4 or 8. + // + // This field can not be set to zero. + // + PXE_UINT64 Mem_IO; +} PXE_CPB_START; + +#define PXE_DELAY_MILLISECOND 1000 +#define PXE_DELAY_SECOND 1000000 +#define PXE_IO_READ 0 +#define PXE_IO_WRITE 1 +#define PXE_MEM_READ 2 +#define PXE_MEM_WRITE 4 + + +typedef struct s_pxe_db_get_init_info { + // + // Minimum length of locked memory buffer that must be given to + // the Initialize command. Giving UNDI more memory will generally + // give better performance. + // + // If MemoryRequired is zero, the UNDI does not need and will not + // use system memory to receive and transmit packets. + // + PXE_UINT32 MemoryRequired; + + // + // Maximum frame data length for Tx/Rx excluding the media header. + // + PXE_UINT32 FrameDataLen; + + // + // Supported link speeds are in units of mega bits. Common ethernet + // values are 10, 100 and 1000. Unused LinkSpeeds[] entries are zero + // filled. + // + PXE_UINT32 LinkSpeeds[4]; + + // + // Number of non-volatile storage items. + // + PXE_UINT32 NvCount; + + // + // Width of non-volatile storage item in bytes. 0, 1, 2 or 4 + // + PXE_UINT16 NvWidth; + + // + // Media header length. This is the typical media header length for + // this UNDI. This information is needed when allocating receive + // and transmit buffers. + // + PXE_UINT16 MediaHeaderLen; + + // + // Number of bytes in the NIC hardware (MAC) address. + // + PXE_UINT16 HWaddrLen; + + // + // Maximum number of multicast MAC addresses in the multicast + // MAC address filter list. + // + PXE_UINT16 MCastFilterCnt; + + // + // Default number and size of transmit and receive buffers that will + // be allocated by the UNDI. If MemoryRequired is non-zero, this + // allocation will come out of the memory buffer given to the Initialize + // command. If MemoryRequired is zero, this allocation will come out of + // memory on the NIC. + // + PXE_UINT16 TxBufCnt; + PXE_UINT16 TxBufSize; + PXE_UINT16 RxBufCnt; + PXE_UINT16 RxBufSize; + + // + // Hardware interface types defined in the Assigned Numbers RFC + // and used in DHCP and ARP packets. + // See the PXE_IFTYPE typedef and PXE_IFTYPE_xxx macros. + // + PXE_UINT8 IFtype; + + // + // Supported duplex. See PXE_DUPLEX_xxxxx #defines below. + // + PXE_UINT8 Duplex; + + // + // Supported loopback options. See PXE_LOOPBACK_xxxxx #defines below. + // + PXE_UINT8 LoopBack; +} PXE_DB_GET_INIT_INFO; + +#define PXE_MAX_TXRX_UNIT_ETHER 1500 + +#define PXE_HWADDR_LEN_ETHER 0x0006 +#define PXE_MAC_HEADER_LEN_ETHER 0x000E + +#define PXE_DUPLEX_ENABLE_FULL_SUPPORTED 1 +#define PXE_DUPLEX_FORCE_FULL_SUPPORTED 2 + +#define PXE_LOOPBACK_INTERNAL_SUPPORTED 1 +#define PXE_LOOPBACK_EXTERNAL_SUPPORTED 2 + + +typedef struct s_pxe_pci_config_info { + // + // This is the flag field for the PXE_DB_GET_CONFIG_INFO union. + // For PCI bus devices, this field is set to PXE_BUSTYPE_PCI. + // + PXE_UINT32 BusType; + + // + // This identifies the PCI network device that this UNDI interface + // is bound to. + // + PXE_UINT16 Bus; + PXE_UINT8 Device; + PXE_UINT8 Function; + + // + // This is a copy of the PCI configuration space for this + // network device. + // + union { + PXE_UINT8 Byte[256]; + PXE_UINT16 Word[128]; + PXE_UINT32 Dword[64]; + } Config; +} PXE_PCI_CONFIG_INFO; + + +typedef struct s_pxe_pcc_config_info { + // + // This is the flag field for the PXE_DB_GET_CONFIG_INFO union. + // For PCC bus devices, this field is set to PXE_BUSTYPE_PCC. + // + PXE_UINT32 BusType; + + // + // This identifies the PCC network device that this UNDI interface + // is bound to. + // + PXE_UINT16 Bus; + PXE_UINT8 Device; + PXE_UINT8 Function; + + // + // This is a copy of the PCC configuration space for this + // network device. + // + union { + PXE_UINT8 Byte[256]; + PXE_UINT16 Word[128]; + PXE_UINT32 Dword[64]; + } Config; +} PXE_PCC_CONFIG_INFO; + + +typedef struct s_pxe_usb_config_info { + PXE_UINT32 BusType; + // %%TBD What should we return here... +} PXE_USB_CONFIG_INFO; + + +typedef struct s_pxe_1394_config_info { + PXE_UINT32 BusType; + // %%TBD What should we return here... +} PXE_1394_CONFIG_INFO; + + +typedef union u_pxe_db_get_config_info { + PXE_PCI_CONFIG_INFO pci; + PXE_PCC_CONFIG_INFO pcc; + PXE_USB_CONFIG_INFO usb; + PXE_1394_CONFIG_INFO _1394; +} PXE_DB_GET_CONFIG_INFO; + + +typedef struct s_pxe_cpb_initialize { + // + // Address of first (lowest) byte of the memory buffer. This buffer must + // be in contiguous physical memory and cannot be swapped out. The UNDI + // will be using this for transmit and receive buffering. + // + PXE_UINT64 MemoryAddr; + + // + // MemoryLength must be greater than or equal to MemoryRequired + // returned by the Get Init Info command. + // + PXE_UINT32 MemoryLength; + + // + // Desired link speed in Mbit/sec. Common ethernet values are 10, 100 + // and 1000. Setting a value of zero will auto-detect and/or use the + // default link speed (operation depends on UNDI/NIC functionality). + // + PXE_UINT32 LinkSpeed; + + // + // Suggested number and size of receive and transmit buffers to + // allocate. If MemoryAddr and MemoryLength are non-zero, this + // allocation comes out of the supplied memory buffer. If MemoryAddr + // and MemoryLength are zero, this allocation comes out of memory + // on the NIC. + // + // If these fields are set to zero, the UNDI will allocate buffer + // counts and sizes as it sees fit. + // + PXE_UINT16 TxBufCnt; + PXE_UINT16 TxBufSize; + PXE_UINT16 RxBufCnt; + PXE_UINT16 RxBufSize; + + // + // The following configuration parameters are optional and must be zero + // to use the default values. + // + PXE_UINT8 Duplex; + + PXE_UINT8 LoopBack; +} PXE_CPB_INITIALIZE; + + +#define PXE_DUPLEX_DEFAULT 0x00 +#define PXE_FORCE_FULL_DUPLEX 0x01 +#define PXE_ENABLE_FULL_DUPLEX 0x02 + +#define LOOPBACK_NORMAL 0 +#define LOOPBACK_INTERNAL 1 +#define LOOPBACK_EXTERNAL 2 + + +typedef struct s_pxe_db_initialize { + // + // Actual amount of memory used from the supplied memory buffer. This + // may be less that the amount of memory suppllied and may be zero if + // the UNDI and network device do not use external memory buffers. + // + // Memory used by the UNDI and network device is allocated from the + // lowest memory buffer address. + // + PXE_UINT32 MemoryUsed; + + // + // Actual number and size of receive and transmit buffers that were + // allocated. + // + PXE_UINT16 TxBufCnt; + PXE_UINT16 TxBufSize; + PXE_UINT16 RxBufCnt; + PXE_UINT16 RxBufSize; +} PXE_DB_INITIALIZE; + + +typedef struct s_pxe_cpb_receive_filters { + // + // List of multicast MAC addresses. This list, if present, will + // replace the existing multicast MAC address filter list. + // + PXE_MAC_ADDR MCastList[MAX_MCAST_ADDRESS_CNT]; +} PXE_CPB_RECEIVE_FILTERS; + + +typedef struct s_pxe_db_receive_filters { + // + // Filtered multicast MAC address list. + // + PXE_MAC_ADDR MCastList[MAX_MCAST_ADDRESS_CNT]; +} PXE_DB_RECEIVE_FILTERS; + + +typedef struct s_pxe_cpb_station_address { + // + // If supplied and supported, the current station MAC address + // will be changed. + // + PXE_MAC_ADDR StationAddr; +} PXE_CPB_STATION_ADDRESS; + + +typedef struct s_pxe_dpb_station_address { + // + // Current station MAC address. + // + PXE_MAC_ADDR StationAddr; + + // + // Station broadcast MAC address. + // + PXE_MAC_ADDR BroadcastAddr; + + // + // Permanent station MAC address. + // + PXE_MAC_ADDR PermanentAddr; +} PXE_DB_STATION_ADDRESS; + + +typedef struct s_pxe_db_statistics { + // + // Bit field identifying what statistic data is collected by the + // UNDI/NIC. + // If bit 0x00 is set, Data[0x00] is collected. + // If bit 0x01 is set, Data[0x01] is collected. + // If bit 0x20 is set, Data[0x20] is collected. + // If bit 0x21 is set, Data[0x21] is collected. + // Etc. + // + PXE_UINT64 Supported; + + // + // Statistic data. + // + PXE_UINT64 Data[64]; +} PXE_DB_STATISTICS; + +// +// Total number of frames received. Includes frames with errors and +// dropped frames. +// +#define PXE_STATISTICS_RX_TOTAL_FRAMES 0x00 + +// +// Number of valid frames received and copied into receive buffers. +// +#define PXE_STATISTICS_RX_GOOD_FRAMES 0x01 + +// +// Number of frames below the minimum length for the media. +// This would be <64 for ethernet. +// +#define PXE_STATISTICS_RX_UNDERSIZE_FRAMES 0x02 + +// +// Number of frames longer than the maxminum length for the +// media. This would be >1500 for ethernet. +// +#define PXE_STATISTICS_RX_OVERSIZE_FRAMES 0x03 + +// +// Valid frames that were dropped because receive buffers were full. +// +#define PXE_STATISTICS_RX_DROPPED_FRAMES 0x04 + +// +// Number of valid unicast frames received and not dropped. +// +#define PXE_STATISTICS_RX_UNICAST_FRAMES 0x05 + +// +// Number of valid broadcast frames received and not dropped. +// +#define PXE_STATISTICS_RX_BROADCAST_FRAMES 0x06 + +// +// Number of valid mutlicast frames received and not dropped. +// +#define PXE_STATISTICS_RX_MULTICAST_FRAMES 0x07 + +// +// Number of frames w/ CRC or alignment errors. +// +#define PXE_STATISTICS_RX_CRC_ERROR_FRAMES 0x08 + +// +// Total number of bytes received. Includes frames with errors +// and dropped frames. +// +#define PXE_STATISTICS_RX_TOTAL_BYTES 0x09 + +// +// Transmit statistics. +// +#define PXE_STATISTICS_TX_TOTAL_FRAMES 0x0A +#define PXE_STATISTICS_TX_GOOD_FRAMES 0x0B +#define PXE_STATISTICS_TX_UNDERSIZE_FRAMES 0x0C +#define PXE_STATISTICS_TX_OVERSIZE_FRAMES 0x0D +#define PXE_STATISTICS_TX_DROPPED_FRAMES 0x0E +#define PXE_STATISTICS_TX_UNICAST_FRAMES 0x0F +#define PXE_STATISTICS_TX_BROADCAST_FRAMES 0x10 +#define PXE_STATISTICS_TX_MULTICAST_FRAMES 0x11 +#define PXE_STATISTICS_TX_CRC_ERROR_FRAMES 0x12 +#define PXE_STATISTICS_TX_TOTAL_BYTES 0x13 + +// +// Number of collisions detection on this subnet. +// +#define PXE_STATISTICS_COLLISIONS 0x14 + +// +// Number of frames destined for unsupported protocol. +// +#define PXE_STATISTICS_UNSUPPORTED_PROTOCOL 0x15 + + +typedef struct s_pxe_cpb_mcast_ip_to_mac { + // + // Multicast IP address to be converted to multicast MAC address. + // + PXE_IP_ADDR IP; +} PXE_CPB_MCAST_IP_TO_MAC; + + +typedef struct s_pxe_db_mcast_ip_to_mac { + // + // Multicast MAC address. + // + PXE_MAC_ADDR MAC; +} PXE_DB_MCAST_IP_TO_MAC; + + +typedef struct s_pxe_cpb_nvdata_sparse { + // + // NvData item list. Only items in this list will be updated. + // + struct { + // Non-volatile storage address to be changed. + PXE_UINT32 Addr; + + // Data item to write into above storage address. + + union { + PXE_UINT8 Byte; + PXE_UINT16 Word; + PXE_UINT32 Dword; + } Data; + } Item[MAX_EEPROM_LEN]; +} PXE_CPB_NVDATA_SPARSE; + + +// +// When using bulk update, the size of the CPB structure must be +// the same size as the non-volatile NIC storage. +// +typedef union u_pxe_cpb_nvdata_bulk { + // + // Array of byte-wide data items. + // + PXE_UINT8 Byte[MAX_EEPROM_LEN << 2]; + + // + // Array of word-wide data items. + // + PXE_UINT16 Word[MAX_EEPROM_LEN << 1]; + + // + // Array of dword-wide data items. + // + PXE_UINT32 Dword[MAX_EEPROM_LEN]; +} PXE_CPB_NVDATA_BULK; + +typedef struct s_pxe_db_nvdata { + + // Arrays of data items from non-volatile storage. + + union { + // + // Array of byte-wide data items. + // + PXE_UINT8 Byte[MAX_EEPROM_LEN << 2]; + + // + // Array of word-wide data items. + // + PXE_UINT16 Word[MAX_EEPROM_LEN << 1]; + + // Array of dword-wide data items. + + PXE_UINT32 Dword[MAX_EEPROM_LEN]; + } Data; +} PXE_DB_NVDATA; + + +typedef struct s_pxe_db_get_status { + // + // Length of next receive frame (header + data). If this is zero, + // there is no next receive frame available. + // + PXE_UINT32 RxFrameLen; + + // + // Reserved, set to zero. + // + PXE_UINT32 reserved; + + // + // Addresses of transmitted buffers that need to be recycled. + // + PXE_UINT64 TxBuffer[MAX_XMIT_BUFFERS]; +} PXE_DB_GET_STATUS; + + + +typedef struct s_pxe_cpb_fill_header { + // + // Source and destination MAC addresses. These will be copied into + // the media header without doing byte swapping. + // + PXE_MAC_ADDR SrcAddr; + PXE_MAC_ADDR DestAddr; + + // + // Address of first byte of media header. The first byte of packet data + // follows the last byte of the media header. + // + PXE_UINT64 MediaHeader; + + // + // Length of packet data in bytes (not including the media header). + // + PXE_UINT32 PacketLen; + + // + // Protocol type. This will be copied into the media header without + // doing byte swapping. Protocol type numbers can be obtained from + // the Assigned Numbers RFC 1700. + // + PXE_UINT16 Protocol; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaHeaderLen; +} PXE_CPB_FILL_HEADER; + + +#define PXE_PROTOCOL_ETHERNET_IP 0x0800 +#define PXE_PROTOCOL_ETHERNET_ARP 0x0806 +#define MAX_XMIT_FRAGMENTS 16 + +typedef struct s_pxe_cpb_fill_header_fragmented { + // + // Source and destination MAC addresses. These will be copied into + // the media header without doing byte swapping. + // + PXE_MAC_ADDR SrcAddr; + PXE_MAC_ADDR DestAddr; + + // + // Length of packet data in bytes (not including the media header). + // + PXE_UINT32 PacketLen; + + // + // Protocol type. This will be copied into the media header without + // doing byte swapping. Protocol type numbers can be obtained from + // the Assigned Numbers RFC 1700. + // + PXE_MEDIA_PROTOCOL Protocol; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaHeaderLen; + + // + // Number of packet fragment descriptors. + // + PXE_UINT16 FragCnt; + + // + // Reserved, must be set to zero. + // + PXE_UINT16 reserved; + + // + // Array of packet fragment descriptors. The first byte of the media + // header is the first byte of the first fragment. + // + struct { + // + // Address of this packet fragment. + // + PXE_UINT64 FragAddr; + + // + // Length of this packet fragment. + // + PXE_UINT32 FragLen; + + // + // Reserved, must be set to zero. + // + PXE_UINT32 reserved; + } FragDesc[MAX_XMIT_FRAGMENTS]; +} PXE_CPB_FILL_HEADER_FRAGMENTED; + + + +typedef struct s_pxe_cpb_transmit { + // + // Address of first byte of frame buffer. This is also the first byte + // of the media header. + // + PXE_UINT64 FrameAddr; + + // + // Length of the data portion of the frame buffer in bytes. Do not + // include the length of the media header. + // + PXE_UINT32 DataLen; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaheaderLen; + + // + // Reserved, must be zero. + // + PXE_UINT16 reserved; +} PXE_CPB_TRANSMIT; + + + +typedef struct s_pxe_cpb_transmit_fragments { + // + // Length of packet data in bytes (not including the media header). + // + PXE_UINT32 FrameLen; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaheaderLen; + + // + // Number of packet fragment descriptors. + // + PXE_UINT16 FragCnt; + + // + // Array of frame fragment descriptors. The first byte of the first + // fragment is also the first byte of the media header. + // + struct { + // + // Address of this frame fragment. + // + PXE_UINT64 FragAddr; + + // + // Length of this frame fragment. + // + PXE_UINT32 FragLen; + + // + // Reserved, must be set to zero. + // + PXE_UINT32 reserved; + } FragDesc[MAX_XMIT_FRAGMENTS]; +} PXE_CPB_TRANSMIT_FRAGMENTS; + + +typedef struct s_pxe_cpb_receive { + // + // Address of first byte of receive buffer. This is also the first byte + // of the frame header. + // + PXE_UINT64 BufferAddr; + + // + // Length of receive buffer. This must be large enough to hold the + // received frame (media header + data). If the length of smaller than + // the received frame, data will be lost. + // + PXE_UINT32 BufferLen; + + // + // Reserved, must be set to zero. + // + PXE_UINT32 reserved; +} PXE_CPB_RECEIVE; + + +typedef struct s_pxe_db_receive { + // + // Source and destination MAC addresses from media header. + // + PXE_MAC_ADDR SrcAddr; + PXE_MAC_ADDR DestAddr; + + // + // Length of received frame. May be larger than receive buffer size. + // The receive buffer will not be overwritten. This is how to tell + // if data was lost because the receive buffer was too small. + // + PXE_UINT32 FrameLen; + + // + // Protocol type from media header. + // + PXE_MEDIA_PROTOCOL Protocol; + + // + // Length of media header in received frame. + // + PXE_UINT16 MediaHeaderLen; + + // + // Type of receive frame. + // + PXE_FRAME_TYPE Type; + + // + // Reserved, must be zero. + // + PXE_UINT8 reserved[7]; + +} PXE_DB_RECEIVE; + +#pragma pack() + +/* EOF - efi_pxe.h */ +#endif /* _EFI_PXE_H */ + diff --git a/efi32/include/efi/efiapi.h b/efi32/include/efi/efiapi.h new file mode 100644 index 00000000..5e47324d --- /dev/null +++ b/efi32/include/efi/efiapi.h @@ -0,0 +1,890 @@ +#ifndef _EFI_API_H +#define _EFI_API_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efiapi.h + +Abstract: + + Global EFI runtime & boot service interfaces + + + + +Revision History + +--*/ + +// +// EFI Specification Revision +// + +#define EFI_SPECIFICATION_MAJOR_REVISION 1 +#define EFI_SPECIFICATION_MINOR_REVISION 02 + +// +// Declare forward referenced data structures +// + +INTERFACE_DECL(_EFI_SYSTEM_TABLE); + +// +// EFI Memory +// + +typedef +EFI_STATUS +(EFIAPI *EFI_ALLOCATE_PAGES) ( + IN EFI_ALLOCATE_TYPE Type, + IN EFI_MEMORY_TYPE MemoryType, + IN UINTN NoPages, + OUT EFI_PHYSICAL_ADDRESS *Memory + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FREE_PAGES) ( + IN EFI_PHYSICAL_ADDRESS Memory, + IN UINTN NoPages + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_MEMORY_MAP) ( + IN OUT UINTN *MemoryMapSize, + IN OUT EFI_MEMORY_DESCRIPTOR *MemoryMap, + OUT UINTN *MapKey, + OUT UINTN *DescriptorSize, + OUT UINT32 *DescriptorVersion + ); + +#define NextMemoryDescriptor(Ptr,Size) ((EFI_MEMORY_DESCRIPTOR *) (((UINT8 *) Ptr) + Size)) + + +typedef +EFI_STATUS +(EFIAPI *EFI_ALLOCATE_POOL) ( + IN EFI_MEMORY_TYPE PoolType, + IN UINTN Size, + OUT VOID **Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FREE_POOL) ( + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_VIRTUAL_ADDRESS_MAP) ( + IN UINTN MemoryMapSize, + IN UINTN DescriptorSize, + IN UINT32 DescriptorVersion, + IN EFI_MEMORY_DESCRIPTOR *VirtualMap + ); + + +#define EFI_OPTIONAL_PTR 0x00000001 +#define EFI_INTERNAL_FNC 0x00000002 // Pointer to internal runtime fnc +#define EFI_INTERNAL_PTR 0x00000004 // Pointer to internal runtime data + + +typedef +EFI_STATUS +(EFIAPI *EFI_CONVERT_POINTER) ( + IN UINTN DebugDisposition, + IN OUT VOID **Address + ); + + +// +// EFI Events +// + + + +#define EVT_TIMER 0x80000000 +#define EVT_RUNTIME 0x40000000 +#define EVT_RUNTIME_CONTEXT 0x20000000 + +#define EVT_NOTIFY_WAIT 0x00000100 +#define EVT_NOTIFY_SIGNAL 0x00000200 + +#define EVT_SIGNAL_EXIT_BOOT_SERVICES 0x00000201 +#define EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE 0x60000202 + +#define EVT_EFI_SIGNAL_MASK 0x000000FF +#define EVT_EFI_SIGNAL_MAX 2 + +typedef +VOID +(EFIAPI *EFI_EVENT_NOTIFY) ( + IN EFI_EVENT Event, + IN VOID *Context + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CREATE_EVENT) ( + IN UINT32 Type, + IN EFI_TPL NotifyTpl, + IN EFI_EVENT_NOTIFY NotifyFunction, + IN VOID *NotifyContext, + OUT EFI_EVENT *Event + ); + +typedef enum { + TimerCancel, + TimerPeriodic, + TimerRelative, + TimerTypeMax +} EFI_TIMER_DELAY; + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_TIMER) ( + IN EFI_EVENT Event, + IN EFI_TIMER_DELAY Type, + IN UINT64 TriggerTime + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SIGNAL_EVENT) ( + IN EFI_EVENT Event + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_WAIT_FOR_EVENT) ( + IN UINTN NumberOfEvents, + IN EFI_EVENT *Event, + OUT UINTN *Index + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CLOSE_EVENT) ( + IN EFI_EVENT Event + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CHECK_EVENT) ( + IN EFI_EVENT Event + ); + +// +// Task priority level +// + +#define TPL_APPLICATION 4 +#define TPL_CALLBACK 8 +#define TPL_NOTIFY 16 +#define TPL_HIGH_LEVEL 31 + +typedef +EFI_TPL +(EFIAPI *EFI_RAISE_TPL) ( + IN EFI_TPL NewTpl + ); + +typedef +VOID +(EFIAPI *EFI_RESTORE_TPL) ( + IN EFI_TPL OldTpl + ); + + +// +// EFI platform varibles +// + +#define EFI_GLOBAL_VARIABLE \ + { 0x8BE4DF61, 0x93CA, 0x11d2, {0xAA, 0x0D, 0x00, 0xE0, 0x98, 0x03, 0x2B, 0x8C} } + +// Variable attributes +#define EFI_VARIABLE_NON_VOLATILE 0x00000001 +#define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x00000002 +#define EFI_VARIABLE_RUNTIME_ACCESS 0x00000004 + +// Variable size limitation +#define EFI_MAXIMUM_VARIABLE_SIZE 1024 + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_VARIABLE) ( + IN CHAR16 *VariableName, + IN EFI_GUID *VendorGuid, + OUT UINT32 *Attributes OPTIONAL, + IN OUT UINTN *DataSize, + OUT VOID *Data + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_NEXT_VARIABLE_NAME) ( + IN OUT UINTN *VariableNameSize, + IN OUT CHAR16 *VariableName, + IN OUT EFI_GUID *VendorGuid + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_VARIABLE) ( + IN CHAR16 *VariableName, + IN EFI_GUID *VendorGuid, + IN UINT32 Attributes, + IN UINTN DataSize, + IN VOID *Data + ); + + +// +// EFI Time +// + +typedef struct { + UINT32 Resolution; // 1e-6 parts per million + UINT32 Accuracy; // hertz + BOOLEAN SetsToZero; // Set clears sub-second time +} EFI_TIME_CAPABILITIES; + + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_TIME) ( + OUT EFI_TIME *Time, + OUT EFI_TIME_CAPABILITIES *Capabilities OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_TIME) ( + IN EFI_TIME *Time + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_WAKEUP_TIME) ( + OUT BOOLEAN *Enabled, + OUT BOOLEAN *Pending, + OUT EFI_TIME *Time + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_WAKEUP_TIME) ( + IN BOOLEAN Enable, + IN EFI_TIME *Time OPTIONAL + ); + + +// +// Image functions +// + + +// PE32+ Subsystem type for EFI images + +#if !defined(IMAGE_SUBSYSTEM_EFI_APPLICATION) +#define IMAGE_SUBSYSTEM_EFI_APPLICATION 10 +#define IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER 11 +#define IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER 12 +#endif + +// PE32+ Machine type for EFI images + +#if !defined(EFI_IMAGE_MACHINE_IA32) +#define EFI_IMAGE_MACHINE_IA32 0x014c +#endif + +#if !defined(EFI_IMAGE_MACHINE_IA64) +#define EFI_IMAGE_MACHINE_IA64 0x0200 +#endif + +// Image Entry prototype + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_ENTRY_POINT) ( + IN EFI_HANDLE ImageHandle, + IN struct _EFI_SYSTEM_TABLE *SystemTable + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_LOAD) ( + IN BOOLEAN BootPolicy, + IN EFI_HANDLE ParentImageHandle, + IN EFI_DEVICE_PATH *FilePath, + IN VOID *SourceBuffer OPTIONAL, + IN UINTN SourceSize, + OUT EFI_HANDLE *ImageHandle + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_START) ( + IN EFI_HANDLE ImageHandle, + OUT UINTN *ExitDataSize, + OUT CHAR16 **ExitData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_EXIT) ( + IN EFI_HANDLE ImageHandle, + IN EFI_STATUS ExitStatus, + IN UINTN ExitDataSize, + IN CHAR16 *ExitData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_UNLOAD) ( + IN EFI_HANDLE ImageHandle + ); + + +// Image handle +#define LOADED_IMAGE_PROTOCOL \ + { 0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} } + +#define EFI_IMAGE_INFORMATION_REVISION 0x1000 +typedef struct { + UINT32 Revision; + EFI_HANDLE ParentHandle; + struct _EFI_SYSTEM_TABLE *SystemTable; + + // Source location of image + EFI_HANDLE DeviceHandle; + EFI_DEVICE_PATH *FilePath; + VOID *Reserved; + + // Images load options + UINT32 LoadOptionsSize; + VOID *LoadOptions; + + // Location of where image was loaded + VOID *ImageBase; + UINT64 ImageSize; + EFI_MEMORY_TYPE ImageCodeType; + EFI_MEMORY_TYPE ImageDataType; + + // If the driver image supports a dynamic unload request + EFI_IMAGE_UNLOAD Unload; + +} EFI_LOADED_IMAGE; + + +typedef +EFI_STATUS +(EFIAPI *EFI_EXIT_BOOT_SERVICES) ( + IN EFI_HANDLE ImageHandle, + IN UINTN MapKey + ); + +// +// Misc +// + + +typedef +EFI_STATUS +(EFIAPI *EFI_STALL) ( + IN UINTN Microseconds + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_WATCHDOG_TIMER) ( + IN UINTN Timeout, + IN UINT64 WatchdogCode, + IN UINTN DataSize, + IN CHAR16 *WatchdogData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CONNECT_CONTROLLER) ( + IN EFI_HANDLE ControllerHandle, + IN EFI_HANDLE *DriverImageHandle OPTIONAL, + IN EFI_DEVICE_PATH *RemainingDevicePath OPTIONAL, + IN BOOLEAN Recursive + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DISCONNECT_CONTROLLER) ( + IN EFI_HANDLE ControllerHandle, + IN EFI_HANDLE DriverImageHandle OPTIONAL, + IN EFI_HANDLE ChildHandle OPTIONAL + ); + +#define EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL 0x00000001 +#define EFI_OPEN_PROTOCOL_GET_PROTOCOL 0x00000002 +#define EFI_OPEN_PROTOCOL_TEST_PROTOCOL 0x00000004 +#define EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER 0x00000008 +#define EFI_OPEN_PROTOCOL_BY_DRIVER 0x00000010 +#define EFI_OPEN_PROTOCOL_EXCLUSIVE 0x00000020 + +typedef +EFI_STATUS +(EFIAPI *EFI_OPEN_PROTOCOL) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + OUT VOID **Interface OPTIONAL, + IN EFI_HANDLE AgentHandle, + IN EFI_HANDLE ControllerHandle, + IN UINT32 Attributes + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CLOSE_PROTOCOL) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + IN EFI_HANDLE AgentHandle, + IN EFI_HANDLE ControllerHandle + ); + +typedef struct { + EFI_HANDLE AgentHandle; + EFI_HANDLE ControllerHandle; + UINT32 Attributes; + UINT32 OpenCount; +} EFI_OPEN_PROTOCOL_INFORMATION_ENTRY; + +typedef +EFI_STATUS +(EFIAPI *EFI_OPEN_PROTOCOL_INFORMATION) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer, + OUT UINTN *EntryCount + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PROTOCOLS_PER_HANDLE) ( + IN EFI_HANDLE Handle, + OUT EFI_GUID ***ProtocolBuffer, + OUT UINTN *ProtocolBufferCount + ); + +typedef enum { + AllHandles, + ByRegisterNotify, + ByProtocol +} EFI_LOCATE_SEARCH_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_HANDLE_BUFFER) ( + IN EFI_LOCATE_SEARCH_TYPE SearchType, + IN EFI_GUID *Protocol OPTIONAL, + IN VOID *SearchKey OPTIONAL, + IN OUT UINTN *NoHandles, + OUT EFI_HANDLE **Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_PROTOCOL) ( + IN EFI_GUID *Protocol, + IN VOID *Registration OPTIONAL, + OUT VOID **Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES) ( + IN OUT EFI_HANDLE *Handle, + ... + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES) ( + IN OUT EFI_HANDLE Handle, + ... + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CALCULATE_CRC32) ( + IN VOID *Data, + IN UINTN DataSize, + OUT UINT32 *Crc32 + ); + +typedef +VOID +(EFIAPI *EFI_COPY_MEM) ( + IN VOID *Destination, + IN VOID *Source, + IN UINTN Length + ); + +typedef +VOID +(EFIAPI *EFI_SET_MEM) ( + IN VOID *Buffer, + IN UINTN Size, + IN UINT8 Value + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_CREATE_EVENT_EX) ( + IN UINT32 Type, + IN EFI_TPL NotifyTpl, + IN EFI_EVENT_NOTIFY NotifyFunction OPTIONAL, + IN const VOID *NotifyContext OPTIONAL, + IN const EFI_GUID EventGroup OPTIONAL, + OUT EFI_EVENT *Event + ); + +typedef enum { + EfiResetCold, + EfiResetWarm, + EfiResetShutdown +} EFI_RESET_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_RESET_SYSTEM) ( + IN EFI_RESET_TYPE ResetType, + IN EFI_STATUS ResetStatus, + IN UINTN DataSize, + IN CHAR16 *ResetData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_NEXT_MONOTONIC_COUNT) ( + OUT UINT64 *Count + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_NEXT_HIGH_MONO_COUNT) ( + OUT UINT32 *HighCount + ); + +// +// Protocol handler functions +// + +typedef enum { + EFI_NATIVE_INTERFACE, + EFI_PCODE_INTERFACE +} EFI_INTERFACE_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_INSTALL_PROTOCOL_INTERFACE) ( + IN OUT EFI_HANDLE *Handle, + IN EFI_GUID *Protocol, + IN EFI_INTERFACE_TYPE InterfaceType, + IN VOID *Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REINSTALL_PROTOCOL_INTERFACE) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + IN VOID *OldInterface, + IN VOID *NewInterface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UNINSTALL_PROTOCOL_INTERFACE) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + IN VOID *Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_HANDLE_PROTOCOL) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + OUT VOID **Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REGISTER_PROTOCOL_NOTIFY) ( + IN EFI_GUID *Protocol, + IN EFI_EVENT Event, + OUT VOID **Registration + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_HANDLE) ( + IN EFI_LOCATE_SEARCH_TYPE SearchType, + IN EFI_GUID *Protocol OPTIONAL, + IN VOID *SearchKey OPTIONAL, + IN OUT UINTN *BufferSize, + OUT EFI_HANDLE *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_DEVICE_PATH) ( + IN EFI_GUID *Protocol, + IN OUT EFI_DEVICE_PATH **DevicePath, + OUT EFI_HANDLE *Device + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_INSTALL_CONFIGURATION_TABLE) ( + IN EFI_GUID *Guid, + IN VOID *Table + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_RESERVED_SERVICE) ( + ); + +// +// Standard EFI table header +// + +typedef struct _EFI_TABLE_HEARDER { + UINT64 Signature; + UINT32 Revision; + UINT32 HeaderSize; + UINT32 CRC32; + UINT32 Reserved; +} EFI_TABLE_HEADER; + + +// +// EFI Runtime Serivces Table +// + +#define EFI_RUNTIME_SERVICES_SIGNATURE 0x56524553544e5552 +#define EFI_RUNTIME_SERVICES_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION) + +typedef struct { + EFI_TABLE_HEADER Hdr; + + // + // Time services + // + + EFI_GET_TIME GetTime; + EFI_SET_TIME SetTime; + EFI_GET_WAKEUP_TIME GetWakeupTime; + EFI_SET_WAKEUP_TIME SetWakeupTime; + + // + // Virtual memory services + // + + EFI_SET_VIRTUAL_ADDRESS_MAP SetVirtualAddressMap; + EFI_CONVERT_POINTER ConvertPointer; + + // + // Variable serviers + // + + EFI_GET_VARIABLE GetVariable; + EFI_GET_NEXT_VARIABLE_NAME GetNextVariableName; + EFI_SET_VARIABLE SetVariable; + + // + // Misc + // + + EFI_GET_NEXT_HIGH_MONO_COUNT GetNextHighMonotonicCount; + EFI_RESET_SYSTEM ResetSystem; + +} EFI_RUNTIME_SERVICES; + + +// +// EFI Boot Services Table +// + +#define EFI_BOOT_SERVICES_SIGNATURE 0x56524553544f4f42 +#define EFI_BOOT_SERVICES_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION) + +typedef struct _EFI_BOOT_SERVICES { + + EFI_TABLE_HEADER Hdr; + + // + // Task priority functions + // + + EFI_RAISE_TPL RaiseTPL; + EFI_RESTORE_TPL RestoreTPL; + + // + // Memory functions + // + + EFI_ALLOCATE_PAGES AllocatePages; + EFI_FREE_PAGES FreePages; + EFI_GET_MEMORY_MAP GetMemoryMap; + EFI_ALLOCATE_POOL AllocatePool; + EFI_FREE_POOL FreePool; + + // + // Event & timer functions + // + + EFI_CREATE_EVENT CreateEvent; + EFI_SET_TIMER SetTimer; + EFI_WAIT_FOR_EVENT WaitForEvent; + EFI_SIGNAL_EVENT SignalEvent; + EFI_CLOSE_EVENT CloseEvent; + EFI_CHECK_EVENT CheckEvent; + + // + // Protocol handler functions + // + + EFI_INSTALL_PROTOCOL_INTERFACE InstallProtocolInterface; + EFI_REINSTALL_PROTOCOL_INTERFACE ReinstallProtocolInterface; + EFI_UNINSTALL_PROTOCOL_INTERFACE UninstallProtocolInterface; + EFI_HANDLE_PROTOCOL HandleProtocol; + EFI_HANDLE_PROTOCOL PCHandleProtocol; + EFI_REGISTER_PROTOCOL_NOTIFY RegisterProtocolNotify; + EFI_LOCATE_HANDLE LocateHandle; + EFI_LOCATE_DEVICE_PATH LocateDevicePath; + EFI_INSTALL_CONFIGURATION_TABLE InstallConfigurationTable; + + // + // Image functions + // + + EFI_IMAGE_LOAD LoadImage; + EFI_IMAGE_START StartImage; + EFI_EXIT Exit; + EFI_IMAGE_UNLOAD UnloadImage; + EFI_EXIT_BOOT_SERVICES ExitBootServices; + + // + // Misc functions + // + + EFI_GET_NEXT_MONOTONIC_COUNT GetNextMonotonicCount; + EFI_STALL Stall; + EFI_SET_WATCHDOG_TIMER SetWatchdogTimer; + + // + // DriverSupport Services + // + + EFI_CONNECT_CONTROLLER ConnectController; + EFI_DISCONNECT_CONTROLLER DisconnectController; + + // + // Open and Close Protocol Services + // + EFI_OPEN_PROTOCOL OpenProtocol; + EFI_CLOSE_PROTOCOL CloseProtocol; + EFI_OPEN_PROTOCOL_INFORMATION OpenProtocolInformation; + + // + // Library Services + // + EFI_PROTOCOLS_PER_HANDLE ProtocolsPerHandle; + EFI_LOCATE_HANDLE_BUFFER LocateHandleBuffer; + EFI_LOCATE_PROTOCOL LocateProtocol; + EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES InstallMultipleProtocolInterfaces; + EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES UninstallMultipleProtocolInterfaces; + + // + // 32-bit CRC Services + // + EFI_CALCULATE_CRC32 CalculateCrc32; + + // + // Misc Services + // + EFI_COPY_MEM CopyMem; + EFI_SET_MEM SetMem; + EFI_CREATE_EVENT_EX CreateEventEx; +} EFI_BOOT_SERVICES; + + +// +// EFI Configuration Table and GUID definitions +// + +#define MPS_TABLE_GUID \ + { 0xeb9d2d2f, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define ACPI_TABLE_GUID \ + { 0xeb9d2d30, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define ACPI_20_TABLE_GUID \ + { 0x8868e871, 0xe4f1, 0x11d3, {0xbc, 0x22, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + +#define SMBIOS_TABLE_GUID \ + { 0xeb9d2d31, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define SAL_SYSTEM_TABLE_GUID \ + { 0xeb9d2d32, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + + +typedef struct _EFI_CONFIGURATION_TABLE { + EFI_GUID VendorGuid; + VOID *VendorTable; +} EFI_CONFIGURATION_TABLE; + + +// +// EFI System Table +// + + + + +#define EFI_SYSTEM_TABLE_SIGNATURE 0x5453595320494249 +#define EFI_SYSTEM_TABLE_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION) + +typedef struct _EFI_SYSTEM_TABLE { + EFI_TABLE_HEADER Hdr; + + CHAR16 *FirmwareVendor; + UINT32 FirmwareRevision; + + EFI_HANDLE ConsoleInHandle; + SIMPLE_INPUT_INTERFACE *ConIn; + + EFI_HANDLE ConsoleOutHandle; + SIMPLE_TEXT_OUTPUT_INTERFACE *ConOut; + + EFI_HANDLE StandardErrorHandle; + SIMPLE_TEXT_OUTPUT_INTERFACE *StdErr; + + EFI_RUNTIME_SERVICES *RuntimeServices; + EFI_BOOT_SERVICES *BootServices; + + UINTN NumberOfTableEntries; + EFI_CONFIGURATION_TABLE *ConfigurationTable; + +} EFI_SYSTEM_TABLE; + +#endif + diff --git a/efi32/include/efi/eficon.h b/efi32/include/efi/eficon.h new file mode 100644 index 00000000..089db981 --- /dev/null +++ b/efi32/include/efi/eficon.h @@ -0,0 +1,302 @@ +#ifndef _EFI_CON_H +#define _EFI_CON_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + eficon.h + +Abstract: + + EFI console protocols + + + +Revision History + +--*/ + +// +// Text output protocol +// + +#define SIMPLE_TEXT_OUTPUT_PROTOCOL \ + { 0x387477c2, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_SIMPLE_TEXT_OUTPUT_INTERFACE); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_RESET) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN BOOLEAN ExtendedVerification + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_OUTPUT_STRING) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN CHAR16 *String + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_TEST_STRING) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN CHAR16 *String + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_QUERY_MODE) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN ModeNumber, + OUT UINTN *Columns, + OUT UINTN *Rows + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_SET_MODE) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN ModeNumber + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_SET_ATTRIBUTE) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN Attribute + ); + +#define EFI_BLACK 0x00 +#define EFI_BLUE 0x01 +#define EFI_GREEN 0x02 +#define EFI_CYAN (EFI_BLUE | EFI_GREEN) +#define EFI_RED 0x04 +#define EFI_MAGENTA (EFI_BLUE | EFI_RED) +#define EFI_BROWN (EFI_GREEN | EFI_RED) +#define EFI_LIGHTGRAY (EFI_BLUE | EFI_GREEN | EFI_RED) +#define EFI_BRIGHT 0x08 +#define EFI_DARKGRAY (EFI_BRIGHT) +#define EFI_LIGHTBLUE (EFI_BLUE | EFI_BRIGHT) +#define EFI_LIGHTGREEN (EFI_GREEN | EFI_BRIGHT) +#define EFI_LIGHTCYAN (EFI_CYAN | EFI_BRIGHT) +#define EFI_LIGHTRED (EFI_RED | EFI_BRIGHT) +#define EFI_LIGHTMAGENTA (EFI_MAGENTA | EFI_BRIGHT) +#define EFI_YELLOW (EFI_BROWN | EFI_BRIGHT) +#define EFI_WHITE (EFI_BLUE | EFI_GREEN | EFI_RED | EFI_BRIGHT) + +#define EFI_TEXT_ATTR(f,b) ((f) | ((b) << 4)) + +#define EFI_BACKGROUND_BLACK 0x00 +#define EFI_BACKGROUND_BLUE 0x10 +#define EFI_BACKGROUND_GREEN 0x20 +#define EFI_BACKGROUND_CYAN (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN) +#define EFI_BACKGROUND_RED 0x40 +#define EFI_BACKGROUND_MAGENTA (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_RED) +#define EFI_BACKGROUND_BROWN (EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED) +#define EFI_BACKGROUND_LIGHTGRAY (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED) + + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_CLEAR_SCREEN) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_SET_CURSOR_POSITION) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN Column, + IN UINTN Row + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_ENABLE_CURSOR) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN BOOLEAN Enable + ); + +typedef struct { + INT32 MaxMode; + // current settings + INT32 Mode; + INT32 Attribute; + INT32 CursorColumn; + INT32 CursorRow; + BOOLEAN CursorVisible; +} SIMPLE_TEXT_OUTPUT_MODE; + +typedef struct _SIMPLE_TEXT_OUTPUT_INTERFACE { + EFI_TEXT_RESET Reset; + + EFI_TEXT_OUTPUT_STRING OutputString; + EFI_TEXT_TEST_STRING TestString; + + EFI_TEXT_QUERY_MODE QueryMode; + EFI_TEXT_SET_MODE SetMode; + EFI_TEXT_SET_ATTRIBUTE SetAttribute; + + EFI_TEXT_CLEAR_SCREEN ClearScreen; + EFI_TEXT_SET_CURSOR_POSITION SetCursorPosition; + EFI_TEXT_ENABLE_CURSOR EnableCursor; + + // Current mode + SIMPLE_TEXT_OUTPUT_MODE *Mode; +} SIMPLE_TEXT_OUTPUT_INTERFACE; + +// +// Define's for required EFI Unicode Box Draw character +// + +#define BOXDRAW_HORIZONTAL 0x2500 +#define BOXDRAW_VERTICAL 0x2502 +#define BOXDRAW_DOWN_RIGHT 0x250c +#define BOXDRAW_DOWN_LEFT 0x2510 +#define BOXDRAW_UP_RIGHT 0x2514 +#define BOXDRAW_UP_LEFT 0x2518 +#define BOXDRAW_VERTICAL_RIGHT 0x251c +#define BOXDRAW_VERTICAL_LEFT 0x2524 +#define BOXDRAW_DOWN_HORIZONTAL 0x252c +#define BOXDRAW_UP_HORIZONTAL 0x2534 +#define BOXDRAW_VERTICAL_HORIZONTAL 0x253c + +#define BOXDRAW_DOUBLE_HORIZONTAL 0x2550 +#define BOXDRAW_DOUBLE_VERTICAL 0x2551 +#define BOXDRAW_DOWN_RIGHT_DOUBLE 0x2552 +#define BOXDRAW_DOWN_DOUBLE_RIGHT 0x2553 +#define BOXDRAW_DOUBLE_DOWN_RIGHT 0x2554 + +#define BOXDRAW_DOWN_LEFT_DOUBLE 0x2555 +#define BOXDRAW_DOWN_DOUBLE_LEFT 0x2556 +#define BOXDRAW_DOUBLE_DOWN_LEFT 0x2557 + +#define BOXDRAW_UP_RIGHT_DOUBLE 0x2558 +#define BOXDRAW_UP_DOUBLE_RIGHT 0x2559 +#define BOXDRAW_DOUBLE_UP_RIGHT 0x255a + +#define BOXDRAW_UP_LEFT_DOUBLE 0x255b +#define BOXDRAW_UP_DOUBLE_LEFT 0x255c +#define BOXDRAW_DOUBLE_UP_LEFT 0x255d + +#define BOXDRAW_VERTICAL_RIGHT_DOUBLE 0x255e +#define BOXDRAW_VERTICAL_DOUBLE_RIGHT 0x255f +#define BOXDRAW_DOUBLE_VERTICAL_RIGHT 0x2560 + +#define BOXDRAW_VERTICAL_LEFT_DOUBLE 0x2561 +#define BOXDRAW_VERTICAL_DOUBLE_LEFT 0x2562 +#define BOXDRAW_DOUBLE_VERTICAL_LEFT 0x2563 + +#define BOXDRAW_DOWN_HORIZONTAL_DOUBLE 0x2564 +#define BOXDRAW_DOWN_DOUBLE_HORIZONTAL 0x2565 +#define BOXDRAW_DOUBLE_DOWN_HORIZONTAL 0x2566 + +#define BOXDRAW_UP_HORIZONTAL_DOUBLE 0x2567 +#define BOXDRAW_UP_DOUBLE_HORIZONTAL 0x2568 +#define BOXDRAW_DOUBLE_UP_HORIZONTAL 0x2569 + +#define BOXDRAW_VERTICAL_HORIZONTAL_DOUBLE 0x256a +#define BOXDRAW_VERTICAL_DOUBLE_HORIZONTAL 0x256b +#define BOXDRAW_DOUBLE_VERTICAL_HORIZONTAL 0x256c + +// +// EFI Required Block Elements Code Chart +// + +#define BLOCKELEMENT_FULL_BLOCK 0x2588 +#define BLOCKELEMENT_LIGHT_SHADE 0x2591 +// +// EFI Required Geometric Shapes Code Chart +// + +#define GEOMETRICSHAPE_UP_TRIANGLE 0x25b2 +#define GEOMETRICSHAPE_RIGHT_TRIANGLE 0x25ba +#define GEOMETRICSHAPE_DOWN_TRIANGLE 0x25bc +#define GEOMETRICSHAPE_LEFT_TRIANGLE 0x25c4 + +// +// EFI Required Arrow shapes +// + +#define ARROW_UP 0x2191 +#define ARROW_DOWN 0x2193 + +// +// Text input protocol +// + +#define SIMPLE_TEXT_INPUT_PROTOCOL \ + { 0x387477c1, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_SIMPLE_INPUT_INTERFACE); + +typedef struct { + UINT16 ScanCode; + CHAR16 UnicodeChar; +} EFI_INPUT_KEY; + +// +// Baseline unicode control chars +// + +#define CHAR_NULL 0x0000 +#define CHAR_BACKSPACE 0x0008 +#define CHAR_TAB 0x0009 +#define CHAR_LINEFEED 0x000A +#define CHAR_CARRIAGE_RETURN 0x000D + +// +// Scan codes for base line keys +// + +#define SCAN_NULL 0x0000 +#define SCAN_UP 0x0001 +#define SCAN_DOWN 0x0002 +#define SCAN_RIGHT 0x0003 +#define SCAN_LEFT 0x0004 +#define SCAN_HOME 0x0005 +#define SCAN_END 0x0006 +#define SCAN_INSERT 0x0007 +#define SCAN_DELETE 0x0008 +#define SCAN_PAGE_UP 0x0009 +#define SCAN_PAGE_DOWN 0x000A +#define SCAN_F1 0x000B +#define SCAN_F2 0x000C +#define SCAN_F3 0x000D +#define SCAN_F4 0x000E +#define SCAN_F5 0x000F +#define SCAN_F6 0x0010 +#define SCAN_F7 0x0011 +#define SCAN_F8 0x0012 +#define SCAN_F9 0x0013 +#define SCAN_F10 0x0014 +#define SCAN_ESC 0x0017 + +typedef +EFI_STATUS +(EFIAPI *EFI_INPUT_RESET) ( + IN struct _SIMPLE_INPUT_INTERFACE *This, + IN BOOLEAN ExtendedVerification + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_INPUT_READ_KEY) ( + IN struct _SIMPLE_INPUT_INTERFACE *This, + OUT EFI_INPUT_KEY *Key + ); + +typedef struct _SIMPLE_INPUT_INTERFACE { + EFI_INPUT_RESET Reset; + EFI_INPUT_READ_KEY ReadKeyStroke; + EFI_EVENT WaitForKey; +} SIMPLE_INPUT_INTERFACE; + +#endif + diff --git a/efi32/include/efi/efidebug.h b/efi32/include/efi/efidebug.h new file mode 100644 index 00000000..f95d492d --- /dev/null +++ b/efi32/include/efi/efidebug.h @@ -0,0 +1,110 @@ +#ifndef _EFI_DEBUG_H +#define _EFI_DEBUG_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efidebug.h + +Abstract: + + EFI library debug functions + + + +Revision History + +--*/ + +extern UINTN EFIDebug; + +#if EFI_DEBUG + + #define DBGASSERT(a) DbgAssert(__FILE__, __LINE__, #a) + #define DEBUG(a) DbgPrint a + +#else + + #define DBGASSERT(a) + #define DEBUG(a) + +#endif + +#if EFI_DEBUG_CLEAR_MEMORY + + #define DBGSETMEM(a,l) SetMem(a,l,(CHAR8)BAD_POINTER) + +#else + + #define DBGSETMEM(a,l) + +#endif + +#define D_INIT 0x00000001 // Initialization style messages +#define D_WARN 0x00000002 // Warnings +#define D_LOAD 0x00000004 // Load events +#define D_FS 0x00000008 // EFI File system +#define D_POOL 0x00000010 // Alloc & Free's +#define D_PAGE 0x00000020 // Alloc & Free's +#define D_INFO 0x00000040 // Verbose +#define D_VAR 0x00000100 // Variable +#define D_PARSE 0x00000200 // Command parsing +#define D_BM 0x00000400 // Boot manager +#define D_BLKIO 0x00001000 // BlkIo Driver +#define D_BLKIO_ULTRA 0x00002000 // BlkIo Driver +#define D_NET 0x00004000 // SNI Driver +#define D_NET_ULTRA 0x00008000 // SNI Driver +#define D_TXTIN 0x00010000 // Simple Input Driver +#define D_TXTOUT 0x00020000 // Simple Text Output Driver +#define D_ERROR_ATA 0x00040000 // ATA error messages +#define D_ERROR 0x80000000 // Error + +#define D_RESERVED 0x7fffC880 // Bits not reserved above + +// +// Current Debug level of the system, value of EFIDebug +// +//#define EFI_DBUG_MASK (D_ERROR | D_WARN | D_LOAD | D_BLKIO | D_INIT) +#define EFI_DBUG_MASK (D_ERROR) + +// +// +// + +#if EFI_DEBUG + + #define ASSERT(a) if(!(a)) DBGASSERT(a) + #define ASSERT_LOCKED(l) if(!(l)->Lock) DBGASSERT(l not locked) + #define ASSERT_STRUCT(p,t) DBGASSERT(t not structure), p + +#else + + #define ASSERT(a) + #define ASSERT_LOCKED(l) + #define ASSERT_STRUCT(p,t) + +#endif + +// +// Prototypes +// + +INTN +DbgAssert ( + CHAR8 *file, + INTN lineno, + CHAR8 *string + ); + +INTN +DbgPrint ( + INTN mask, + CHAR8 *format, + ... + ); + +#endif + diff --git a/efi32/include/efi/efidef.h b/efi32/include/efi/efidef.h new file mode 100644 index 00000000..666b1934 --- /dev/null +++ b/efi32/include/efi/efidef.h @@ -0,0 +1,211 @@ +#ifndef _EFI_DEF_H +#define _EFI_DEF_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efidef.h + +Abstract: + + EFI definitions + + + + +Revision History + +--*/ + +typedef UINT16 CHAR16; +typedef UINT8 CHAR8; +typedef UINT8 BOOLEAN; +#ifndef CONST + #define CONST const +#endif +#ifndef TRUE + #define TRUE ((BOOLEAN) 1) + #define FALSE ((BOOLEAN) 0) +#endif + +#ifndef NULL + #define NULL ((VOID *) 0) +#endif + +typedef UINTN EFI_STATUS; +typedef UINT64 EFI_LBA; +typedef UINTN EFI_TPL; +typedef VOID *EFI_HANDLE; +typedef VOID *EFI_EVENT; + + +// +// Prototype argument decoration for EFI parameters to indicate +// their direction +// +// IN - argument is passed into the function +// OUT - argument (pointer) is returned from the function +// OPTIONAL - argument is optional +// + +#ifndef IN + #define IN + #define OUT + #define OPTIONAL +#endif + + +// +// A GUID +// + +typedef struct { + UINT32 Data1; + UINT16 Data2; + UINT16 Data3; + UINT8 Data4[8]; +} EFI_GUID; + + +// +// Time +// + +typedef struct { + UINT16 Year; // 1998 - 20XX + UINT8 Month; // 1 - 12 + UINT8 Day; // 1 - 31 + UINT8 Hour; // 0 - 23 + UINT8 Minute; // 0 - 59 + UINT8 Second; // 0 - 59 + UINT8 Pad1; + UINT32 Nanosecond; // 0 - 999,999,999 + INT16 TimeZone; // -1440 to 1440 or 2047 + UINT8 Daylight; + UINT8 Pad2; +} EFI_TIME; + +// Bit definitions for EFI_TIME.Daylight +#define EFI_TIME_ADJUST_DAYLIGHT 0x01 +#define EFI_TIME_IN_DAYLIGHT 0x02 + +// Value definition for EFI_TIME.TimeZone +#define EFI_UNSPECIFIED_TIMEZONE 0x07FF + + + +// +// Networking +// + +typedef struct { + UINT8 Addr[4]; +} EFI_IPv4_ADDRESS; + +typedef struct { + UINT8 Addr[16]; +} EFI_IPv6_ADDRESS; + +typedef struct { + UINT8 Addr[32]; +} EFI_MAC_ADDRESS; + +typedef struct { + UINT32 ReceivedQueueTimeoutValue; + UINT32 TransmitQueueTimeoutValue; + UINT16 ProtocolTypeFilter; + BOOLEAN EnableUnicastReceive; + BOOLEAN EnableMulticastReceive; + BOOLEAN EnableBroadcastReceive; + BOOLEAN EnablePromiscuousReceive; + BOOLEAN FlushQueuesOnReset; + BOOLEAN EnableReceiveTimestamps; + BOOLEAN DisableBackgroundPolling; +} EFI_MANAGED_NETWORK_CONFIG_DATA; + +// +// Memory +// + +typedef UINT64 EFI_PHYSICAL_ADDRESS; +typedef UINT64 EFI_VIRTUAL_ADDRESS; + +typedef enum { + AllocateAnyPages, + AllocateMaxAddress, + AllocateAddress, + MaxAllocateType +} EFI_ALLOCATE_TYPE; + +//Preseve the attr on any range supplied. +//ConventialMemory must have WB,SR,SW when supplied. +//When allocating from ConventialMemory always make it WB,SR,SW +//When returning to ConventialMemory always make it WB,SR,SW +//When getting the memory map, or on RT for runtime types + + +typedef enum { + EfiReservedMemoryType, + EfiLoaderCode, + EfiLoaderData, + EfiBootServicesCode, + EfiBootServicesData, + EfiRuntimeServicesCode, + EfiRuntimeServicesData, + EfiConventionalMemory, + EfiUnusableMemory, + EfiACPIReclaimMemory, + EfiACPIMemoryNVS, + EfiMemoryMappedIO, + EfiMemoryMappedIOPortSpace, + EfiPalCode, + EfiMaxMemoryType +} EFI_MEMORY_TYPE; + +// possible caching types for the memory range +#define EFI_MEMORY_UC 0x0000000000000001 +#define EFI_MEMORY_WC 0x0000000000000002 +#define EFI_MEMORY_WT 0x0000000000000004 +#define EFI_MEMORY_WB 0x0000000000000008 +#define EFI_MEMORY_UCE 0x0000000000000010 + +// physical memory protection on range +#define EFI_MEMORY_WP 0x0000000000001000 +#define EFI_MEMORY_RP 0x0000000000002000 +#define EFI_MEMORY_XP 0x0000000000004000 + +// range requires a runtime mapping +#define EFI_MEMORY_RUNTIME 0x8000000000000000 + +#define EFI_MEMORY_DESCRIPTOR_VERSION 1 +typedef struct { + UINT32 Type; // Field size is 32 bits followed by 32 bit pad + UINT32 Pad; + EFI_PHYSICAL_ADDRESS PhysicalStart; // Field size is 64 bits + EFI_VIRTUAL_ADDRESS VirtualStart; // Field size is 64 bits + UINT64 NumberOfPages; // Field size is 64 bits + UINT64 Attribute; // Field size is 64 bits +} EFI_MEMORY_DESCRIPTOR; + +// +// International Language +// + +typedef UINT8 ISO_639_2; +#define ISO_639_2_ENTRY_SIZE 3 + +// +// +// + +#define EFI_PAGE_SIZE 4096 +#define EFI_PAGE_MASK 0xFFF +#define EFI_PAGE_SHIFT 12 + +#define EFI_SIZE_TO_PAGES(a) \ + ( ((a) >> EFI_PAGE_SHIFT) + ((a) & EFI_PAGE_MASK ? 1 : 0) ) + +#endif diff --git a/efi32/include/efi/efidevp.h b/efi32/include/efi/efidevp.h new file mode 100644 index 00000000..beb5785a --- /dev/null +++ b/efi32/include/efi/efidevp.h @@ -0,0 +1,402 @@ +#ifndef _DEVPATH_H +#define _DEVPATH_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + devpath.h + +Abstract: + + Defines for parsing the EFI Device Path structures + + + +Revision History + +--*/ + +// +// Device Path structures - Section C +// + +typedef struct _EFI_DEVICE_PATH { + UINT8 Type; + UINT8 SubType; + UINT8 Length[2]; +} EFI_DEVICE_PATH; + +#define EFI_DP_TYPE_MASK 0x7F +#define EFI_DP_TYPE_UNPACKED 0x80 + +//#define END_DEVICE_PATH_TYPE 0xff +#define END_DEVICE_PATH_TYPE 0x7f +//#define END_DEVICE_PATH_TYPE_UNPACKED 0x7f + +#define END_ENTIRE_DEVICE_PATH_SUBTYPE 0xff +#define END_INSTANCE_DEVICE_PATH_SUBTYPE 0x01 +#define END_DEVICE_PATH_LENGTH (sizeof(EFI_DEVICE_PATH)) + + +#define DP_IS_END_TYPE(a) +#define DP_IS_END_SUBTYPE(a) ( ((a)->SubType == END_ENTIRE_DEVICE_PATH_SUBTYPE ) + +#define DevicePathType(a) ( ((a)->Type) & EFI_DP_TYPE_MASK ) +#define DevicePathSubType(a) ( (a)->SubType ) +#define DevicePathNodeLength(a) ( ((a)->Length[0]) | ((a)->Length[1] << 8) ) +#define NextDevicePathNode(a) ( (EFI_DEVICE_PATH *) ( ((UINT8 *) (a)) + DevicePathNodeLength(a))) +//#define IsDevicePathEndType(a) ( DevicePathType(a) == END_DEVICE_PATH_TYPE_UNPACKED ) +#define IsDevicePathEndType(a) ( DevicePathType(a) == END_DEVICE_PATH_TYPE ) +#define IsDevicePathEndSubType(a) ( (a)->SubType == END_ENTIRE_DEVICE_PATH_SUBTYPE ) +#define IsDevicePathEnd(a) ( IsDevicePathEndType(a) && IsDevicePathEndSubType(a) ) +#define IsDevicePathUnpacked(a) ( (a)->Type & EFI_DP_TYPE_UNPACKED ) + + +#define SetDevicePathNodeLength(a,l) { \ + (a)->Length[0] = (UINT8) (l); \ + (a)->Length[1] = (UINT8) ((l) >> 8); \ + } + +#define SetDevicePathEndNode(a) { \ + (a)->Type = END_DEVICE_PATH_TYPE; \ + (a)->SubType = END_ENTIRE_DEVICE_PATH_SUBTYPE; \ + (a)->Length[0] = sizeof(EFI_DEVICE_PATH); \ + (a)->Length[1] = 0; \ + } + + + +/* + * + */ +#define HARDWARE_DEVICE_PATH 0x01 + +#define HW_PCI_DP 0x01 +typedef struct _PCI_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 Function; + UINT8 Device; +} PCI_DEVICE_PATH; + +#define HW_PCCARD_DP 0x02 +typedef struct _PCCARD_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 SocketNumber; +} PCCARD_DEVICE_PATH; + +#define HW_MEMMAP_DP 0x03 +typedef struct _MEMMAP_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 MemoryType; + EFI_PHYSICAL_ADDRESS StartingAddress; + EFI_PHYSICAL_ADDRESS EndingAddress; +} MEMMAP_DEVICE_PATH; + +#define HW_VENDOR_DP 0x04 +typedef struct _VENDOR_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_GUID Guid; +} VENDOR_DEVICE_PATH; + +#define UNKNOWN_DEVICE_GUID \ + { 0xcf31fac5, 0xc24e, 0x11d2, {0x85, 0xf3, 0x0, 0xa0, 0xc9, 0x3e, 0xc9, 0x3b} } + +typedef struct _UKNOWN_DEVICE_VENDOR_DP { + VENDOR_DEVICE_PATH DevicePath; + UINT8 LegacyDriveLetter; +} UNKNOWN_DEVICE_VENDOR_DEVICE_PATH; + +#define HW_CONTROLLER_DP 0x05 +typedef struct _CONTROLLER_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Controller; +} CONTROLLER_DEVICE_PATH; + +/* + * + */ +#define ACPI_DEVICE_PATH 0x02 + +#define ACPI_DP 0x01 +typedef struct _ACPI_HID_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 HID; + UINT32 UID; +} ACPI_HID_DEVICE_PATH; + +#define EXPANDED_ACPI_DP 0x02 +typedef struct _EXPANDED_ACPI_HID_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 HID; + UINT32 UID; + UINT32 CID; + UINT8 HidStr[1]; +} EXPANDED_ACPI_HID_DEVICE_PATH; + +// +// EISA ID Macro +// EISA ID Definition 32-bits +// bits[15:0] - three character compressed ASCII EISA ID. +// bits[31:16] - binary number +// Compressed ASCII is 5 bits per character 0b00001 = 'A' 0b11010 = 'Z' +// +#define PNP_EISA_ID_CONST 0x41d0 +#define EISA_ID(_Name, _Num) ((UINT32) ((_Name) | (_Num) << 16)) +#define EISA_PNP_ID(_PNPId) (EISA_ID(PNP_EISA_ID_CONST, (_PNPId))) + +#define PNP_EISA_ID_MASK 0xffff +#define EISA_ID_TO_NUM(_Id) ((_Id) >> 16) +/* + * + */ +#define MESSAGING_DEVICE_PATH 0x03 + +#define MSG_ATAPI_DP 0x01 +typedef struct _ATAPI_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 PrimarySecondary; + UINT8 SlaveMaster; + UINT16 Lun; +} ATAPI_DEVICE_PATH; + +#define MSG_SCSI_DP 0x02 +typedef struct _SCSI_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT16 Pun; + UINT16 Lun; +} SCSI_DEVICE_PATH; + +#define MSG_FIBRECHANNEL_DP 0x03 +typedef struct _FIBRECHANNEL_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 WWN; + UINT64 Lun; +} FIBRECHANNEL_DEVICE_PATH; + +#define MSG_1394_DP 0x04 +typedef struct _F1394_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 Guid; +} F1394_DEVICE_PATH; + +#define MSG_USB_DP 0x05 +typedef struct _USB_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 Port; + UINT8 Endpoint; +} USB_DEVICE_PATH; + +#define MSG_USB_CLASS_DP 0x0F +typedef struct _USB_CLASS_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT16 VendorId; + UINT16 ProductId; + UINT8 DeviceClass; + UINT8 DeviceSubclass; + UINT8 DeviceProtocol; +} USB_CLASS_DEVICE_PATH; + +#define MSG_I2O_DP 0x06 +typedef struct _I2O_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Tid; +} I2O_DEVICE_PATH; + +#define MSG_MAC_ADDR_DP 0x0b +typedef struct _MAC_ADDR_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_MAC_ADDRESS MacAddress; + UINT8 IfType; +} MAC_ADDR_DEVICE_PATH; + +#define MSG_IPv4_DP 0x0c +typedef struct _IPv4_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_IPv4_ADDRESS LocalIpAddress; + EFI_IPv4_ADDRESS RemoteIpAddress; + UINT16 LocalPort; + UINT16 RemotePort; + UINT16 Protocol; + BOOLEAN StaticIpAddress; +} IPv4_DEVICE_PATH; + +#define MSG_IPv6_DP 0x0d +typedef struct _IPv6_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_IPv6_ADDRESS LocalIpAddress; + EFI_IPv6_ADDRESS RemoteIpAddress; + UINT16 LocalPort; + UINT16 RemotePort; + UINT16 Protocol; + BOOLEAN StaticIpAddress; +} IPv6_DEVICE_PATH; + +#define MSG_INFINIBAND_DP 0x09 +typedef struct _INFINIBAND_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 NodeGuid; + UINT64 IocGuid; + UINT64 DeviceId; +} INFINIBAND_DEVICE_PATH; + +#define MSG_UART_DP 0x0e +typedef struct _UART_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 BaudRate; + UINT8 DataBits; + UINT8 Parity; + UINT8 StopBits; +} UART_DEVICE_PATH; + +#define MSG_VENDOR_DP 0x0A +/* Use VENDOR_DEVICE_PATH struct */ + +#define DEVICE_PATH_MESSAGING_PC_ANSI \ + { 0xe0c14753, 0xf9be, 0x11d2, {0x9a, 0x0c, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define DEVICE_PATH_MESSAGING_VT_100 \ + { 0xdfa66065, 0xb419, 0x11d3, {0x9a, 0x2d, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + + + +#define MEDIA_DEVICE_PATH 0x04 + +#define MEDIA_HARDDRIVE_DP 0x01 +typedef struct _HARDDRIVE_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 PartitionNumber; + UINT64 PartitionStart; + UINT64 PartitionSize; + UINT8 Signature[16]; + UINT8 MBRType; + UINT8 SignatureType; +} HARDDRIVE_DEVICE_PATH; + +#define MBR_TYPE_PCAT 0x01 +#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER 0x02 + +#define SIGNATURE_TYPE_MBR 0x01 +#define SIGNATURE_TYPE_GUID 0x02 + +#define MEDIA_CDROM_DP 0x02 +typedef struct _CDROM_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 BootEntry; + UINT64 PartitionStart; + UINT64 PartitionSize; +} CDROM_DEVICE_PATH; + +#define MEDIA_VENDOR_DP 0x03 +/* Use VENDOR_DEVICE_PATH struct */ + +#define MEDIA_FILEPATH_DP 0x04 +typedef struct _FILEPATH_DEVICE_PATH { + EFI_DEVICE_PATH Header; + CHAR16 PathName[1]; +} FILEPATH_DEVICE_PATH; + +#define SIZE_OF_FILEPATH_DEVICE_PATH EFI_FIELD_OFFSET(FILEPATH_DEVICE_PATH,PathName) + +#define MEDIA_PROTOCOL_DP 0x05 +typedef struct _MEDIA_PROTOCOL_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_GUID Protocol; +} MEDIA_PROTOCOL_DEVICE_PATH; + + +#define BBS_DEVICE_PATH 0x05 +#define BBS_BBS_DP 0x01 +typedef struct _BBS_BBS_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT16 DeviceType; + UINT16 StatusFlag; + CHAR8 String[1]; +} BBS_BBS_DEVICE_PATH; + +/* DeviceType definitions - from BBS specification */ +#define BBS_TYPE_FLOPPY 0x01 +#define BBS_TYPE_HARDDRIVE 0x02 +#define BBS_TYPE_CDROM 0x03 +#define BBS_TYPE_PCMCIA 0x04 +#define BBS_TYPE_USB 0x05 +#define BBS_TYPE_EMBEDDED_NETWORK 0x06 +#define BBS_TYPE_DEV 0x80 +#define BBS_TYPE_UNKNOWN 0xFF + +typedef union { + EFI_DEVICE_PATH DevPath; + PCI_DEVICE_PATH Pci; + PCCARD_DEVICE_PATH PcCard; + MEMMAP_DEVICE_PATH MemMap; + VENDOR_DEVICE_PATH Vendor; + UNKNOWN_DEVICE_VENDOR_DEVICE_PATH UnknownVendor; + CONTROLLER_DEVICE_PATH Controller; + ACPI_HID_DEVICE_PATH Acpi; + + ATAPI_DEVICE_PATH Atapi; + SCSI_DEVICE_PATH Scsi; + FIBRECHANNEL_DEVICE_PATH FibreChannel; + + F1394_DEVICE_PATH F1394; + USB_DEVICE_PATH Usb; + USB_CLASS_DEVICE_PATH UsbClass; + I2O_DEVICE_PATH I2O; + MAC_ADDR_DEVICE_PATH MacAddr; + IPv4_DEVICE_PATH Ipv4; + IPv6_DEVICE_PATH Ipv6; + INFINIBAND_DEVICE_PATH InfiniBand; + UART_DEVICE_PATH Uart; + + HARDDRIVE_DEVICE_PATH HardDrive; + CDROM_DEVICE_PATH CD; + + FILEPATH_DEVICE_PATH FilePath; + MEDIA_PROTOCOL_DEVICE_PATH MediaProtocol; + + BBS_BBS_DEVICE_PATH Bbs; + +} EFI_DEV_PATH; + +typedef union { + EFI_DEVICE_PATH *DevPath; + PCI_DEVICE_PATH *Pci; + PCCARD_DEVICE_PATH *PcCard; + MEMMAP_DEVICE_PATH *MemMap; + VENDOR_DEVICE_PATH *Vendor; + UNKNOWN_DEVICE_VENDOR_DEVICE_PATH *UnknownVendor; + CONTROLLER_DEVICE_PATH *Controller; + ACPI_HID_DEVICE_PATH *Acpi; + + ATAPI_DEVICE_PATH *Atapi; + SCSI_DEVICE_PATH *Scsi; + FIBRECHANNEL_DEVICE_PATH *FibreChannel; + + F1394_DEVICE_PATH *F1394; + USB_DEVICE_PATH *Usb; + USB_CLASS_DEVICE_PATH *UsbClass; + I2O_DEVICE_PATH *I2O; + MAC_ADDR_DEVICE_PATH *MacAddr; + IPv4_DEVICE_PATH *Ipv4; + IPv6_DEVICE_PATH *Ipv6; + INFINIBAND_DEVICE_PATH *InfiniBand; + UART_DEVICE_PATH *Uart; + + HARDDRIVE_DEVICE_PATH *HardDrive; + + FILEPATH_DEVICE_PATH *FilePath; + MEDIA_PROTOCOL_DEVICE_PATH *MediaProtocol; + + CDROM_DEVICE_PATH *CD; + BBS_BBS_DEVICE_PATH *Bbs; + +} EFI_DEV_PATH_PTR; + + +#endif diff --git a/efi32/include/efi/efierr.h b/efi32/include/efi/efierr.h new file mode 100644 index 00000000..dfd3d3cf --- /dev/null +++ b/efi32/include/efi/efierr.h @@ -0,0 +1,67 @@ +#ifndef _EFI_ERR_H +#define _EFI_ERR_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efierr.h + +Abstract: + + EFI error codes + + + + +Revision History + +--*/ + + +#define EFIWARN(a) (a) +#define EFI_ERROR(a) (((INTN) a) < 0) + + +#define EFI_SUCCESS 0 +#define EFI_LOAD_ERROR EFIERR(1) +#define EFI_INVALID_PARAMETER EFIERR(2) +#define EFI_UNSUPPORTED EFIERR(3) +#define EFI_BAD_BUFFER_SIZE EFIERR(4) +#define EFI_BUFFER_TOO_SMALL EFIERR(5) +#define EFI_NOT_READY EFIERR(6) +#define EFI_DEVICE_ERROR EFIERR(7) +#define EFI_WRITE_PROTECTED EFIERR(8) +#define EFI_OUT_OF_RESOURCES EFIERR(9) +#define EFI_VOLUME_CORRUPTED EFIERR(10) +#define EFI_VOLUME_FULL EFIERR(11) +#define EFI_NO_MEDIA EFIERR(12) +#define EFI_MEDIA_CHANGED EFIERR(13) +#define EFI_NOT_FOUND EFIERR(14) +#define EFI_ACCESS_DENIED EFIERR(15) +#define EFI_NO_RESPONSE EFIERR(16) +#define EFI_NO_MAPPING EFIERR(17) +#define EFI_TIMEOUT EFIERR(18) +#define EFI_NOT_STARTED EFIERR(19) +#define EFI_ALREADY_STARTED EFIERR(20) +#define EFI_ABORTED EFIERR(21) +#define EFI_ICMP_ERROR EFIERR(22) +#define EFI_TFTP_ERROR EFIERR(23) +#define EFI_PROTOCOL_ERROR EFIERR(24) +#define EFI_INCOMPATIBLE_VERSION EFIERR(25) +#define EFI_SECURITY_VIOLATION EFIERR(26) +#define EFI_CRC_ERROR EFIERR(27) +#define EFI_END_OF_MEDIA EFIERR(28) +#define EFI_END_OF_FILE EFIERR(31) +#define EFI_INVALID_LANGUAGE EFIERR(32) +#define EFI_COMPROMISED_DATA EFIERR(33) + +#define EFI_WARN_UNKOWN_GLYPH EFIWARN(1) +#define EFI_WARN_DELETE_FAILURE EFIWARN(2) +#define EFI_WARN_WRITE_FAILURE EFIWARN(3) +#define EFI_WARN_BUFFER_TOO_SMALL EFIWARN(4) + +#endif + diff --git a/efi32/include/efi/efifs.h b/efi32/include/efi/efifs.h new file mode 100644 index 00000000..fc595d10 --- /dev/null +++ b/efi32/include/efi/efifs.h @@ -0,0 +1,116 @@ +#ifndef _EFI_FS_H +#define _EFI_FS_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efifs.h + +Abstract: + + EFI File System structures + + + +Revision History + +--*/ + + +// +// EFI Partition header (normaly starts in LBA 1) +// + +#define EFI_PARTITION_SIGNATURE 0x5053595320494249 +#define EFI_PARTITION_REVISION 0x00010001 +#define MIN_EFI_PARTITION_BLOCK_SIZE 512 +#define EFI_PARTITION_LBA 1 + +typedef struct _EFI_PARTITION_HEADER { + EFI_TABLE_HEADER Hdr; + UINT32 DirectoryAllocationNumber; + UINT32 BlockSize; + EFI_LBA FirstUsableLba; + EFI_LBA LastUsableLba; + EFI_LBA UnusableSpace; + EFI_LBA FreeSpace; + EFI_LBA RootFile; + EFI_LBA SecutiryFile; +} EFI_PARTITION_HEADER; + + +// +// File header +// + +#define EFI_FILE_HEADER_SIGNATURE 0x454c494620494249 +#define EFI_FILE_HEADER_REVISION 0x00010000 +#define EFI_FILE_STRING_SIZE 260 + +typedef struct _EFI_FILE_HEADER { + EFI_TABLE_HEADER Hdr; + UINT32 Class; + UINT32 LBALOffset; + EFI_LBA Parent; + UINT64 FileSize; + UINT64 FileAttributes; + EFI_TIME FileCreateTime; + EFI_TIME FileModificationTime; + EFI_GUID VendorGuid; + CHAR16 FileString[EFI_FILE_STRING_SIZE]; +} EFI_FILE_HEADER; + + +// +// Return the file's first LBAL which is in the same +// logical block as the file header +// + +#define EFI_FILE_LBAL(a) ((EFI_LBAL *) (((CHAR8 *) (a)) + (a)->LBALOffset)) + +#define EFI_FILE_CLASS_FREE_SPACE 1 +#define EFI_FILE_CLASS_EMPTY 2 +#define EFI_FILE_CLASS_NORMAL 3 + + +// +// Logical Block Address List - the fundemental block +// description structure +// + +#define EFI_LBAL_SIGNATURE 0x4c41424c20494249 +#define EFI_LBAL_REVISION 0x00010000 + +typedef struct _EFI_LBAL { + EFI_TABLE_HEADER Hdr; + UINT32 Class; + EFI_LBA Parent; + EFI_LBA Next; + UINT32 ArraySize; + UINT32 ArrayCount; +} EFI_LBAL; + +// Array size +#define EFI_LBAL_ARRAY_SIZE(lbal,offs,blks) \ + (((blks) - (offs) - (lbal)->Hdr.HeaderSize) / sizeof(EFI_RL)) + +// +// Logical Block run-length +// + +typedef struct { + EFI_LBA Start; + UINT64 Length; +} EFI_RL; + +// +// Return the run-length structure from an LBAL header +// + +#define EFI_LBAL_RL(a) ((EFI_RL*) (((CHAR8 *) (a)) + (a)->Hdr.HeaderSize)) + +#endif + diff --git a/efi32/include/efi/efigpt.h b/efi32/include/efi/efigpt.h new file mode 100644 index 00000000..d1694ae7 --- /dev/null +++ b/efi32/include/efi/efigpt.h @@ -0,0 +1,68 @@ +#ifndef _EFI_GPT_H +#define _EFI_GPT_H +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + EfiGpt.h + +Abstract: + Include file for EFI partitioning scheme + + + +Revision History + +--*/ + +#define PRIMARY_PART_HEADER_LBA 1 + +typedef struct { + EFI_TABLE_HEADER Header; + EFI_LBA MyLBA; + EFI_LBA AlternateLBA; + EFI_LBA FirstUsableLBA; + EFI_LBA LastUsableLBA; + EFI_GUID DiskGUID; + EFI_LBA PartitionEntryLBA; + UINT32 NumberOfPartitionEntries; + UINT32 SizeOfPartitionEntry; + UINT32 PartitionEntryArrayCRC32; +} EFI_PARTITION_TABLE_HEADER; + +#define EFI_PTAB_HEADER_ID "EFI PART" + +typedef struct { + EFI_GUID PartitionTypeGUID; + EFI_GUID UniquePartitionGUID; + EFI_LBA StartingLBA; + EFI_LBA EndingLBA; + UINT64 Attributes; + CHAR16 PartitionName[36]; +} EFI_PARTITION_ENTRY; + +// +// EFI Partition Attributes +// +#define EFI_PART_USED_BY_EFI 0x0000000000000001 +#define EFI_PART_REQUIRED_TO_FUNCTION 0x0000000000000002 +#define EFI_PART_USED_BY_OS 0x0000000000000004 +#define EFI_PART_REQUIRED_BY_OS 0x0000000000000008 +#define EFI_PART_BACKUP_REQUIRED 0x0000000000000010 +#define EFI_PART_USER_DATA 0x0000000000000020 +#define EFI_PART_CRITICAL_USER_DATA 0x0000000000000040 +#define EFI_PART_REDUNDANT_PARTITION 0x0000000000000080 + +#define EFI_PART_TYPE_UNUSED_GUID \ + { 0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} } + +#define EFI_PART_TYPE_EFI_SYSTEM_PART_GUID \ + { 0xc12a7328, 0xf81f, 0x11d2, {0xba, 0x4b, 0x00, 0xa0, 0xc9, 0x3e, 0xc9, 0x3b} } + +#define EFI_PART_TYPE_LEGACY_MBR_GUID \ + { 0x024dee41, 0x33e7, 0x11d3, {0x9d, 0x69, 0x00, 0x08, 0xc7, 0x81, 0xf3, 0x9f} } + +#endif + diff --git a/efi32/include/efi/efiip.h b/efi32/include/efi/efiip.h new file mode 100644 index 00000000..83950796 --- /dev/null +++ b/efi32/include/efi/efiip.h @@ -0,0 +1,459 @@ +#ifndef _EFI_IP_H +#define _EFI_IP_H + +/*++ +Copyright (c) 2013 Intel Corporation + +--*/ + +#define EFI_IP4_SERVICE_BINDING_PROTOCOL \ + {0xc51711e7,0xb4bf,0x404a,{0xbf,0xb8,0x0a,0x04, 0x8e,0xf1,0xff,0xe4}} + +#define EFI_IP4_PROTOCOL \ + {0x41d94cd2,0x35b6,0x455a,{0x82,0x58,0xd4,0xe5,0x13,0x34,0xaa,0xdd}} + +#define EFI_IP6_SERVICE_BINDING_PROTOCOL \ + {0xec835dd3,0xfe0f,0x617b,{0xa6,0x21,0xb3,0x50,0xc3,0xe1,0x33,0x88}} + +#define EFI_IP6_PROTOCOL \ + {0x2c8759d5,0x5c2d,0x66ef,{0x92,0x5f,0xb6,0x6c,0x10,0x19,0x57,0xe2}} + +INTERFACE_DECL(_EFI_IP4); +INTERFACE_DECL(_EFI_IP6); + +typedef struct { + EFI_HANDLE InstanceHandle; + EFI_IPv4_ADDRESS Ip4Address; + EFI_IPv4_ADDRESS SubnetMask; +} EFI_IP4_ADDRESS_PAIR; + +typedef struct { + EFI_HANDLE DriverHandle; + UINT32 AddressCount; + EFI_IP4_ADDRESS_PAIR AddressPairs[1]; +} EFI_IP4_VARIABLE_DATA; + +typedef struct { + UINT8 DefaultProtocol; + BOOLEAN AcceptAnyProtocol; + BOOLEAN AcceptIcmpErrors; + BOOLEAN AcceptBroadcast; + BOOLEAN AcceptPromiscuous; + BOOLEAN UseDefaultAddress; + EFI_IPv4_ADDRESS StationAddress; + EFI_IPv4_ADDRESS SubnetMask; + UINT8 TypeOfService; + UINT8 TimeToLive; + BOOLEAN DoNotFragment; + BOOLEAN RawData; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; +} EFI_IP4_CONFIG_DATA; + +typedef struct { + EFI_IPv4_ADDRESS SubnetAddress; + EFI_IPv4_ADDRESS SubnetMask; + EFI_IPv4_ADDRESS GatewayAddress; +} EFI_IP4_ROUTE_TABLE; + +typedef struct { + UINT8 Type; + UINT8 Code; +} EFI_IP4_ICMP_TYPE; + +typedef struct { + BOOLEAN IsStarted; + UINT32 MaxPacketSize; + EFI_IP4_CONFIG_DATA ConfigData; + BOOLEAN IsConfigured; + UINT32 GroupCount; + EFI_IPv4_ADDRESS *GroupTable; + UINT32 RouteCount; + EFI_IP4_ROUTE_TABLE *RouteTable; + UINT32 IcmpTypeCount; + EFI_IP4_ICMP_TYPE *IcmpTypeList; +} EFI_IP4_MODE_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_GET_MODE_DATA) ( + IN struct _EFI_IP4 *This, + OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_CONFIGURE) ( + IN struct _EFI_IP4 *This, + IN EFI_IP4_CONFIG_DATA *IpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_GROUPS) ( + IN struct _EFI_IP4 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv4_ADDRESS *GroupAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_ROUTES) ( + IN struct _EFI_IP4 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv4_ADDRESS *SubnetAddress, + IN EFI_IPv4_ADDRESS *SubnetMask, + IN EFI_IPv4_ADDRESS *GatewayAddress + ); + +#pragma pack(1) +typedef struct { + UINT8 HeaderLength:4; + UINT8 Version:4; + UINT8 TypeOfService; + UINT16 TotalLength; + UINT16 Identification; + UINT16 Fragmentation; + UINT8 TimeToLive; + UINT8 Protocol; + UINT16 Checksum; + EFI_IPv4_ADDRESS SourceAddress; + EFI_IPv4_ADDRESS DestinationAddress; +} EFI_IP4_HEADER; +#pragma pack() + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_IP4_FRAGMENT_DATA; + +typedef struct { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + UINT32 HeaderLength; + EFI_IP4_HEADER *Header; + UINT32 OptionsLength; + VOID *Options; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_IP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP4_RECEIVE_DATA; + +typedef struct { + EFI_IPv4_ADDRESS SourceAddress; + EFI_IPv4_ADDRESS GatewayAddress; + UINT8 Protocol; + UINT8 TypeOfService; + UINT8 TimeToLive; + BOOLEAN DoNotFragment; +} EFI_IP4_OVERRIDE_DATA; + +typedef struct { + EFI_IPv4_ADDRESS DestinationAddress; + EFI_IP4_OVERRIDE_DATA *OverrideData; + UINT32 OptionsLength; + VOID *OptionsBuffer; + UINT32 TotalDataLength; + UINT32 FragmentCount; + EFI_IP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP4_TRANSMIT_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_IP4_RECEIVE_DATA *RxData; + EFI_IP4_TRANSMIT_DATA *TxData; + } Packet; +} EFI_IP4_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_TRANSMIT) ( + IN struct _EFI_IP4 *This, + IN EFI_IP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_RECEIVE) ( + IN struct _EFI_IP4 *This, + IN EFI_IP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_CANCEL)( + IN struct _EFI_IP4 *This, + IN EFI_IP4_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_POLL) ( + IN struct _EFI_IP4 *This + ); + +typedef struct _EFI_IP4 { + EFI_IP4_GET_MODE_DATA GetModeData; + EFI_IP4_CONFIGURE Configure; + EFI_IP4_GROUPS Groups; + EFI_IP4_ROUTES Routes; + EFI_IP4_TRANSMIT Transmit; + EFI_IP4_RECEIVE Receive; + EFI_IP4_CANCEL Cancel; + EFI_IP4_POLL Poll; +} EFI_IP4; + +typedef struct { + UINT8 DefaultProtocol; + BOOLEAN AcceptAnyProtocol; + BOOLEAN AcceptIcmpErrors; + BOOLEAN AcceptPromiscuous; + EFI_IPv6_ADDRESS DestinationAddress; + EFI_IPv6_ADDRESS StationAddress; + UINT8 TrafficClass; + UINT8 HopLimit; + UINT32 FlowLabel; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; +} EFI_IP6_CONFIG_DATA; + +typedef struct { + EFI_IPv6_ADDRESS Address; + UINT8 PrefixLength; +} EFI_IP6_ADDRESS_INFO; + +typedef struct { + EFI_IPv6_ADDRESS Gateway; + EFI_IPv6_ADDRESS Destination; + UINT8 PrefixLength; +} EFI_IP6_ROUTE_TABLE; + +typedef enum { + EfiNeighborInComplete, + EfiNeighborReachable, + EfiNeighborStale, + EfiNeighborDelay, + EfiNeighborProbe +} EFI_IP6_NEIGHBOR_STATE; + +typedef struct { + EFI_IPv6_ADDRESS Neighbor; + EFI_MAC_ADDRESS LinkAddress; + EFI_IP6_NEIGHBOR_STATE State; +} EFI_IP6_NEIGHBOR_CACHE; + +typedef struct { + UINT8 Type; + UINT8 Code; +} EFI_IP6_ICMP_TYPE; + +//*********************************************************** +// ICMPv6 type definitions for error messages +//*********************************************************** +#define ICMP_V6_DEST_UNREACHABLE 0x1 +#define ICMP_V6_PACKET_TOO_BIG 0x2 +#define ICMP_V6_TIME_EXCEEDED 0x3 +#define ICMP_V6_PARAMETER_PROBLEM 0x4 + +//*********************************************************** +// ICMPv6 type definition for informational messages +//*********************************************************** +#define ICMP_V6_ECHO_REQUEST 0x80 +#define ICMP_V6_ECHO_REPLY 0x81 +#define ICMP_V6_LISTENER_QUERY 0x82 +#define ICMP_V6_LISTENER_REPORT 0x83 +#define ICMP_V6_LISTENER_DONE 0x84 +#define ICMP_V6_ROUTER_SOLICIT 0x85 +#define ICMP_V6_ROUTER_ADVERTISE 0x86 +#define ICMP_V6_NEIGHBOR_SOLICIT 0x87 +#define ICMP_V6_NEIGHBOR_ADVERTISE 0x88 +#define ICMP_V6_REDIRECT 0x89 +#define ICMP_V6_LISTENER_REPORT_2 0x8F + +//*********************************************************** +// ICMPv6 code definitions for ICMP_V6_DEST_UNREACHABLE +//*********************************************************** +#define ICMP_V6_NO_ROUTE_TO_DEST 0x0 +#define ICMP_V6_COMM_PROHIBITED 0x1 +#define ICMP_V6_BEYOND_SCOPE 0x2 +#define ICMP_V6_ADDR_UNREACHABLE 0x3 +#define ICMP_V6_PORT_UNREACHABLE 0x4 +#define ICMP_V6_SOURCE_ADDR_FAILED 0x5 +#define ICMP_V6_ROUTE_REJECTED 0x6 + +//*********************************************************** +// ICMPv6 code definitions for ICMP_V6_TIME_EXCEEDED +//*********************************************************** +#define ICMP_V6_TIMEOUT_HOP_LIMIT 0x0 +#define ICMP_V6_TIMEOUT_REASSEMBLE 0x1 + +//*********************************************************** +// ICMPv6 code definitions for ICMP_V6_PARAMETER_PROBLEM +//*********************************************************** +#define ICMP_V6_ERRONEOUS_HEADER 0x0 +#define ICMP_V6_UNRECOGNIZE_NEXT_HDR 0x1 +#define ICMP_V6_UNRECOGNIZE_OPTION 0x2 + +typedef struct { + BOOLEAN IsStarted; + UINT32 MaxPacketSize; + EFI_IP6_CONFIG_DATA ConfigData; + BOOLEAN IsConfigured; + UINT32 AddressCount; + EFI_IP6_ADDRESS_INFO *AddressList; + UINT32 GroupCount; + EFI_IPv6_ADDRESS *GroupTable; + UINT32 RouteCount; + EFI_IP6_ROUTE_TABLE *RouteTable; + UINT32 NeighborCount; + EFI_IP6_NEIGHBOR_CACHE *NeighborCache; + UINT32 PrefixCount; + EFI_IP6_ADDRESS_INFO *PrefixTable; + UINT32 IcmpTypeCount; + EFI_IP6_ICMP_TYPE *IcmpTypeList; +} EFI_IP6_MODE_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_GET_MODE_DATA) ( + IN struct _EFI_IP6 *This, + OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_CONFIGURE) ( + IN struct _EFI_IP6 *This, + IN EFI_IP6_CONFIG_DATA *Ip6ConfigData OPTIONAL + ); +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_GROUPS) ( + IN struct _EFI_IP6 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv6_ADDRESS *GroupAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_ROUTES) ( + IN struct _EFI_IP6 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv6_ADDRESS *Destination OPTIONAL, + IN UINT8 PrefixLength, + IN EFI_IPv6_ADDRESS *GatewayAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_NEIGHBORS) ( + IN struct _EFI_IP6 *This, + IN BOOLEAN DeleteFlag, + IN EFI_IPv6_ADDRESS *TargetIp6Address, + IN EFI_MAC_ADDRESS *TargetLinkAddress OPTIONAL, + IN UINT32 Timeout, + IN BOOLEAN Override + ); + +typedef struct _EFI_IP6_FRAGMENT_DATA { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_IP6_FRAGMENT_DATA; + +typedef struct _EFI_IP6_OVERRIDE_DATA { + UINT8 Protocol; + UINT8 HopLimit; + UINT32 FlowLabel; +} EFI_IP6_OVERRIDE_DATA; + +typedef struct _EFI_IP6_TRANSMIT_DATA { + EFI_IPv6_ADDRESS DestinationAddress; + EFI_IP6_OVERRIDE_DATA *OverrideData; + UINT32 ExtHdrsLength; + VOID *ExtHdrs; + UINT8 NextHeader; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_IP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP6_TRANSMIT_DATA; + +#pragma pack(1) +typedef struct _EFI_IP6_HEADER { + UINT8 TrafficClassH:4; + UINT8 Version:4; + UINT8 FlowLabelH:4; + UINT8 TrafficClassL:4; + UINT16 FlowLabelL; + UINT16 PayloadLength; + UINT8 NextHeader; + UINT8 HopLimit; + EFI_IPv6_ADDRESS SourceAddress; + EFI_IPv6_ADDRESS DestinationAddress; +} EFI_IP6_HEADER; +#pragma pack() + +typedef struct _EFI_IP6_RECEIVE_DATA { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + UINT32 HeaderLength; + EFI_IP6_HEADER *Header; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_IP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP6_RECEIVE_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_IP6_RECEIVE_DATA *RxData; + EFI_IP6_TRANSMIT_DATA *TxData; + } Packet; +} EFI_IP6_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_TRANSMIT) ( + IN struct _EFI_IP6 *This, + IN EFI_IP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_RECEIVE) ( + IN struct _EFI_IP6 *This, + IN EFI_IP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_CANCEL)( + IN struct _EFI_IP6 *This, + IN EFI_IP6_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_POLL) ( + IN struct _EFI_IP6 *This + ); + +typedef struct _EFI_IP6 { + EFI_IP6_GET_MODE_DATA GetModeData; + EFI_IP6_CONFIGURE Configure; + EFI_IP6_GROUPS Groups; + EFI_IP6_ROUTES Routes; + EFI_IP6_NEIGHBORS Neighbors; + EFI_IP6_TRANSMIT Transmit; + EFI_IP6_RECEIVE Receive; + EFI_IP6_CANCEL Cancel; + EFI_IP6_POLL Poll; +} EFI_IP6; + +#endif /* _EFI_IP_H */ diff --git a/efi32/include/efi/efilib.h b/efi32/include/efi/efilib.h new file mode 100644 index 00000000..e0c63758 --- /dev/null +++ b/efi32/include/efi/efilib.h @@ -0,0 +1,895 @@ +#ifndef _EFILIB_INCLUDE_ +#define _EFILIB_INCLUDE_ + +/*++ + +Copyright (c) 2000 Intel Corporation + +Module Name: + + efilib.h + +Abstract: + + EFI library functions + + + +Revision History + +--*/ + +#include "efidebug.h" +#include "efipart.h" +#include "efilibplat.h" +#include "efilink.h" +#include "efirtlib.h" +#include "pci22.h" +#include "libsmbios.h" + +// +// Public read-only data in the EFI library +// + +extern EFI_SYSTEM_TABLE *ST; +extern EFI_BOOT_SERVICES *BS; +extern EFI_RUNTIME_SERVICES *RT; + +extern EFI_GUID DevicePathProtocol; +extern EFI_GUID LoadedImageProtocol; +extern EFI_GUID TextInProtocol; +extern EFI_GUID TextOutProtocol; +extern EFI_GUID BlockIoProtocol; +extern EFI_GUID DiskIoProtocol; +extern EFI_GUID FileSystemProtocol; +extern EFI_GUID LoadFileProtocol; +extern EFI_GUID DeviceIoProtocol; +extern EFI_GUID VariableStoreProtocol; +extern EFI_GUID LegacyBootProtocol; +extern EFI_GUID UnicodeCollationProtocol; +extern EFI_GUID SerialIoProtocol; +extern EFI_GUID VgaClassProtocol; +extern EFI_GUID TextOutSpliterProtocol; +extern EFI_GUID ErrorOutSpliterProtocol; +extern EFI_GUID TextInSpliterProtocol; +extern EFI_GUID SimpleNetworkProtocol; +extern EFI_GUID PxeBaseCodeProtocol; +extern EFI_GUID PxeCallbackProtocol; +extern EFI_GUID NetworkInterfaceIdentifierProtocol; +extern EFI_GUID UiProtocol; +extern EFI_GUID InternalShellProtocol; +extern EFI_GUID PciIoProtocol; + +extern EFI_GUID EfiGlobalVariable; +extern EFI_GUID GenericFileInfo; +extern EFI_GUID FileSystemInfo; +extern EFI_GUID FileSystemVolumeLabelInfo; +extern EFI_GUID PcAnsiProtocol; +extern EFI_GUID Vt100Protocol; +extern EFI_GUID NullGuid; +extern EFI_GUID UnknownDevice; + +extern EFI_GUID EfiPartTypeSystemPartitionGuid; +extern EFI_GUID EfiPartTypeLegacyMbrGuid; + +extern EFI_GUID MpsTableGuid; +extern EFI_GUID AcpiTableGuid; +extern EFI_GUID SMBIOSTableGuid; +extern EFI_GUID SalSystemTableGuid; + +// +// EFI Variable strings +// +#define LOAD_OPTION_ACTIVE 0x00000001 + +#define VarLanguageCodes L"LangCodes" +#define VarLanguage L"Lang" +#define VarTimeout L"Timeout" +#define VarConsoleInp L"ConIn" +#define VarConsoleOut L"ConOut" +#define VarErrorOut L"ErrOut" +#define VarBootOption L"Boot%04x" +#define VarBootOrder L"BootOrder" +#define VarBootNext L"BootNext" +#define VarBootCurrent L"BootCurrent" +#define VarDriverOption L"Driver%04x" +#define VarDriverOrder L"DriverOrder" +#define VarConsoleInpDev L"ConInDev" +#define VarConsoleOutDev L"ConOutDev" +#define VarErrorOutDev L"ErrOutDev" + +#define LanguageCodeEnglish "eng" + +extern EFI_DEVICE_PATH RootDevicePath[]; +extern EFI_DEVICE_PATH EndDevicePath[]; +extern EFI_DEVICE_PATH EndInstanceDevicePath[]; + +// +// Other public data in the EFI library +// + +extern EFI_MEMORY_TYPE PoolAllocationType; + +// +// STATIC - Name is internal to the module +// INTERNAL - Name is internal to the component (i.e., directory) +// BOOTSERVCE - Name of a boot service function +// + +#define STATIC +#define INTERNAL +#define BOOTSERVICE + +// +// Prototypes +// + +VOID +InitializeLib ( + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable + ); + +VOID +InitializeUnicodeSupport ( + CHAR8 *LangCode + ); + +VOID +EFIDebugVariable ( + VOID + ); + +VOID +SetCrc ( + IN OUT EFI_TABLE_HEADER *Hdr + ); + +VOID +SetCrcAltSize ( + IN UINTN Size, + IN OUT EFI_TABLE_HEADER *Hdr + ); + +BOOLEAN +CheckCrc ( + IN UINTN MaxSize, + IN OUT EFI_TABLE_HEADER *Hdr + ); + +BOOLEAN +CheckCrcAltSize ( + IN UINTN MaxSize, + IN UINTN Size, + IN OUT EFI_TABLE_HEADER *Hdr + ); + +UINT32 +CalculateCrc ( + UINT8 *pt, + UINTN Size + ); + +VOID +ZeroMem ( + IN VOID *Buffer, + IN UINTN Size + ); + +VOID +SetMem ( + IN VOID *Buffer, + IN UINTN Size, + IN UINT8 Value + ); + +VOID +CopyMem ( + IN VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +CompareMem ( + IN CONST VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +StrCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2 + ); + +INTN +StrnCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2, + IN UINTN len + ); + +INTN +StriCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2 + ); + +VOID +StrLwr ( + IN CHAR16 *Str + ); + +VOID +StrUpr ( + IN CHAR16 *Str + ); + +VOID +StrCpy ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +VOID +StrCat ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +UINTN +StrLen ( + IN CONST CHAR16 *s1 + ); + +UINTN +StrSize ( + IN CONST CHAR16 *s1 + ); + +CHAR16 * +StrDuplicate ( + IN CONST CHAR16 *Src + ); + +UINTN +strlena ( + IN CONST CHAR8 *s1 + ); + +UINTN +strcmpa ( + IN CONST CHAR8 *s1, + IN CONST CHAR8 *s2 + ); + +UINTN +strncmpa ( + IN CONST CHAR8 *s1, + IN CONST CHAR8 *s2, + IN UINTN len + ); + +UINTN +xtoi ( + CONST CHAR16 *str + ); + +UINTN +Atoi ( + CONST CHAR16 *str + ); + +BOOLEAN +MetaMatch ( + IN CHAR16 *String, + IN CHAR16 *Pattern + ); + +BOOLEAN +MetaiMatch ( + IN CHAR16 *String, + IN CHAR16 *Pattern + ); + +UINT64 +LShiftU64 ( + IN UINT64 Operand, + IN UINTN Count + ); + +UINT64 +RShiftU64 ( + IN UINT64 Operand, + IN UINTN Count + ); + +UINT64 +MultU64x32 ( + IN UINT64 Multiplicand, + IN UINTN Multiplier + ); + +UINT64 +DivU64x32 ( + IN UINT64 Dividend, + IN UINTN Divisor, + OUT UINTN *Remainder OPTIONAL + ); + +VOID +InitializeLock ( + IN OUT FLOCK *Lock, + IN EFI_TPL Priority + ); + +VOID +AcquireLock ( + IN FLOCK *Lock + ); + +VOID +ReleaseLock ( + IN FLOCK *Lock + ); + + +INTN +CompareGuid( + IN EFI_GUID *Guid1, + IN EFI_GUID *Guid2 + ); + +VOID * +AllocatePool ( + IN UINTN Size + ); + +VOID * +AllocateZeroPool ( + IN UINTN Size + ); + +VOID * +ReallocatePool ( + IN VOID *OldPool, + IN UINTN OldSize, + IN UINTN NewSize + ); + +VOID +FreePool ( + IN VOID *p + ); + + +VOID +Output ( + IN CHAR16 *Str + ); + +VOID +Input ( + IN CHAR16 *Prompt OPTIONAL, + OUT CHAR16 *InStr, + IN UINTN StrLen + ); + +VOID +IInput ( + IN SIMPLE_TEXT_OUTPUT_INTERFACE *ConOut, + IN SIMPLE_INPUT_INTERFACE *ConIn, + IN CHAR16 *Prompt OPTIONAL, + OUT CHAR16 *InStr, + IN UINTN StrLen + ); + +UINTN +Print ( + IN CHAR16 *fmt, + ... + ); + +UINTN +SPrint ( + OUT CHAR16 *Str, + IN UINTN StrSize, + IN CHAR16 *fmt, + ... + ); + +CHAR16 * +PoolPrint ( + IN CHAR16 *fmt, + ... + ); + +typedef struct { + CHAR16 *str; + UINTN len; + UINTN maxlen; +} POOL_PRINT; + +CHAR16 * +CatPrint ( + IN OUT POOL_PRINT *Str, + IN CHAR16 *fmt, + ... + ); + +UINTN +PrintAt ( + IN UINTN Column, + IN UINTN Row, + IN CHAR16 *fmt, + ... + ); + +UINTN +IPrint ( + IN SIMPLE_TEXT_OUTPUT_INTERFACE *Out, + IN CHAR16 *fmt, + ... + ); + +UINTN +IPrintAt ( + IN SIMPLE_TEXT_OUTPUT_INTERFACE *Out, + IN UINTN Column, + IN UINTN Row, + IN CHAR16 *fmt, + ... + ); + +UINTN +APrint ( + IN CHAR8 *fmt, + ... + ); + +VOID +ValueToHex ( + IN CHAR16 *Buffer, + IN UINT64 v + ); + +VOID +ValueToString ( + IN CHAR16 *Buffer, + IN BOOLEAN Comma, + IN INT64 v + ); + +VOID +TimeToString ( + OUT CHAR16 *Buffer, + IN EFI_TIME *Time + ); + +VOID +GuidToString ( + OUT CHAR16 *Buffer, + IN EFI_GUID *Guid + ); + +VOID +StatusToString ( + OUT CHAR16 *Buffer, + EFI_STATUS Status + ); + +VOID +DumpHex ( + IN UINTN Indent, + IN UINTN Offset, + IN UINTN DataSize, + IN VOID *UserData + ); + +BOOLEAN +GrowBuffer( + IN OUT EFI_STATUS *Status, + IN OUT VOID **Buffer, + IN UINTN BufferSize + ); + +EFI_MEMORY_DESCRIPTOR * +LibMemoryMap ( + OUT UINTN *NoEntries, + OUT UINTN *MapKey, + OUT UINTN *DescriptorSize, + OUT UINT32 *DescriptorVersion + ); + +VOID * +LibGetVariable ( + IN CHAR16 *Name, + IN EFI_GUID *VendorGuid + ); + +VOID * +LibGetVariableAndSize ( + IN CHAR16 *Name, + IN EFI_GUID *VendorGuid, + OUT UINTN *VarSize + ); + +EFI_STATUS +LibDeleteVariable ( + IN CHAR16 *VarName, + IN EFI_GUID *VarGuid + ); + +EFI_STATUS +LibSetNVVariable ( + IN CHAR16 *VarName, + IN EFI_GUID *VarGuid, + IN UINTN DataSize, + IN VOID *Data + ); + +EFI_STATUS +LibSetVariable ( + IN CHAR16 *VarName, + IN EFI_GUID *VarGuid, + IN UINTN DataSize, + IN VOID *Data + ); +EFI_STATUS +LibInsertToTailOfBootOrder ( + IN UINT16 BootOption, + IN BOOLEAN OnlyInsertIfEmpty + ); + +EFI_STATUS +LibLocateProtocol ( + IN EFI_GUID *ProtocolGuid, + OUT VOID **Interface + ); + +EFI_STATUS +LibLocateHandle ( + IN EFI_LOCATE_SEARCH_TYPE SearchType, + IN EFI_GUID *Protocol OPTIONAL, + IN VOID *SearchKey OPTIONAL, + IN OUT UINTN *NoHandles, + OUT EFI_HANDLE **Buffer + ); + +EFI_STATUS +LibLocateHandleByDiskSignature ( + IN UINT8 MBRType, + IN UINT8 SignatureType, + IN VOID *Signature, + IN OUT UINTN *NoHandles, + OUT EFI_HANDLE **Buffer + ); + +EFI_STATUS +LibInstallProtocolInterfaces ( + IN OUT EFI_HANDLE *Handle, + ... + ); + +VOID +LibUninstallProtocolInterfaces ( + IN EFI_HANDLE Handle, + ... + ); + +EFI_STATUS +LibReinstallProtocolInterfaces ( + IN OUT EFI_HANDLE *Handle, + ... + ); + +EFI_EVENT +LibCreateProtocolNotifyEvent ( + IN EFI_GUID *ProtocolGuid, + IN EFI_TPL NotifyTpl, + IN EFI_EVENT_NOTIFY NotifyFunction, + IN VOID *NotifyContext, + OUT VOID *Registration + ); + +EFI_STATUS +WaitForSingleEvent ( + IN EFI_EVENT Event, + IN UINT64 Timeout OPTIONAL + ); + +VOID +WaitForEventWithTimeout ( + IN EFI_EVENT Event, + IN UINTN Timeout, + IN UINTN Row, + IN UINTN Column, + IN CHAR16 *String, + IN EFI_INPUT_KEY TimeoutKey, + OUT EFI_INPUT_KEY *Key + ); + +EFI_FILE_HANDLE +LibOpenRoot ( + IN EFI_HANDLE DeviceHandle + ); + +EFI_FILE_INFO * +LibFileInfo ( + IN EFI_FILE_HANDLE FHand + ); + +EFI_FILE_SYSTEM_INFO * +LibFileSystemInfo ( + IN EFI_FILE_HANDLE FHand + ); + +EFI_FILE_SYSTEM_VOLUME_LABEL_INFO * +LibFileSystemVolumeLabelInfo ( + IN EFI_FILE_HANDLE FHand + ); + +BOOLEAN +ValidMBR( + IN MASTER_BOOT_RECORD *Mbr, + IN EFI_BLOCK_IO *BlkIo + ); + +BOOLEAN +LibMatchDevicePaths ( + IN EFI_DEVICE_PATH *Multi, + IN EFI_DEVICE_PATH *Single + ); + +EFI_DEVICE_PATH * +LibDuplicateDevicePathInstance ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_DEVICE_PATH * +DevicePathFromHandle ( + IN EFI_HANDLE Handle + ); + +EFI_DEVICE_PATH * +DevicePathInstance ( + IN OUT EFI_DEVICE_PATH **DevicePath, + OUT UINTN *Size + ); + +UINTN +DevicePathInstanceCount ( + IN EFI_DEVICE_PATH *DevicePath + ); + +EFI_DEVICE_PATH * +AppendDevicePath ( + IN EFI_DEVICE_PATH *Src1, + IN EFI_DEVICE_PATH *Src2 + ); + +EFI_DEVICE_PATH * +AppendDevicePathNode ( + IN EFI_DEVICE_PATH *Src1, + IN EFI_DEVICE_PATH *Src2 + ); + +EFI_DEVICE_PATH* +AppendDevicePathInstance ( + IN EFI_DEVICE_PATH *Src, + IN EFI_DEVICE_PATH *Instance + ); + +EFI_DEVICE_PATH * +FileDevicePath ( + IN EFI_HANDLE Device OPTIONAL, + IN CHAR16 *FileName + ); + +UINTN +DevicePathSize ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_DEVICE_PATH * +DuplicateDevicePath ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_DEVICE_PATH * +UnpackDevicePath ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_STATUS +LibDevicePathToInterface ( + IN EFI_GUID *Protocol, + IN EFI_DEVICE_PATH *FilePath, + OUT VOID **Interface + ); + +CHAR16 * +DevicePathToStr ( + EFI_DEVICE_PATH *DevPath + ); + +// +// BugBug: I need my own include files +// +typedef struct { + UINT8 Register; + UINT8 Function; + UINT8 Device; + UINT8 Bus; + UINT32 Reserved; +} EFI_ADDRESS; + +typedef union { + UINT64 Address; + EFI_ADDRESS EfiAddress; +} EFI_PCI_ADDRESS_UNION; + + +EFI_STATUS +PciFindDeviceClass ( + IN OUT EFI_PCI_ADDRESS_UNION *Address, + IN UINT8 BaseClass, + IN UINT8 SubClass + ); + +EFI_STATUS +PciFindDevice ( + IN OUT EFI_PCI_ADDRESS_UNION *DeviceAddress, + IN UINT16 VendorId, + IN UINT16 DeviceId, + IN OUT PCI_TYPE00 *Pci + ); + +// +// SIMPLE_READ_FILE object used to access files +// + +typedef VOID *SIMPLE_READ_FILE; + +EFI_STATUS +OpenSimpleReadFile ( + IN BOOLEAN BootPolicy, + IN VOID *SourceBuffer OPTIONAL, + IN UINTN SourceSize, + IN OUT EFI_DEVICE_PATH **FilePath, + OUT EFI_HANDLE *DeviceHandle, + OUT SIMPLE_READ_FILE *SimpleReadHandle + ); + +EFI_STATUS +ReadSimpleReadFile ( + IN SIMPLE_READ_FILE SimpleReadHandle, + IN UINTN Offset, + IN OUT UINTN *ReadSize, + OUT VOID *Buffer + ); + + +VOID +CloseSimpleReadFile ( + IN SIMPLE_READ_FILE SimpleReadHandle + ); + +VOID +InitializeGuid ( + VOID + ); + +UINT8 +DecimaltoBCD( + IN UINT8 DecValue + ); + +UINT8 +BCDtoDecimal( + IN UINT8 BcdValue + ); + +EFI_STATUS +LibGetSystemConfigurationTable( + IN EFI_GUID *TableGuid, + IN OUT VOID **Table + ); + +BOOLEAN +LibIsValidTextGraphics ( + IN CHAR16 Graphic, + OUT CHAR8 *PcAnsi, OPTIONAL + OUT CHAR8 *Ascii OPTIONAL + ); + +BOOLEAN +IsValidAscii ( + IN CHAR16 Ascii + ); + +BOOLEAN +IsValidEfiCntlChar ( + IN CHAR16 c + ); + +CHAR16 * +LibGetUiString ( + IN EFI_HANDLE Handle, + IN UI_STRING_TYPE StringType, + IN ISO_639_2 *LangCode, + IN BOOLEAN ReturnDevicePathStrOnMismatch + ); + +CHAR8* +LibGetSmbiosString ( + IN SMBIOS_STRUCTURE_POINTER *Smbios, + IN UINT16 StringNumber + ); + +EFI_STATUS +LibGetSmbiosSystemGuidAndSerialNumber ( + IN EFI_GUID *SystemGuid, + OUT CHAR8 **SystemSerialNumber + ); + + +EFI_STATUS +InitializeGlobalIoDevice ( + IN EFI_DEVICE_PATH *DevicePath, + IN EFI_GUID *Protocol, + IN CHAR8 *ErrorStr, + OUT EFI_DEVICE_IO_INTERFACE **GlobalIoFncs + ); + +UINT32 +ReadPort ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port + ); + +UINT32 +WritePort ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port, + IN UINTN Data + ); + +UINT32 +ReadPciConfig ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port + ); + +UINT32 +WritePciConfig ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port, + IN UINTN Data + ); + +extern EFI_DEVICE_IO_INTERFACE *GlobalIoFncs; + +#define outp(_Port, _DataByte) (UINT8)WritePort(GlobalIoFncs, IO_UINT8, (UINTN)_Port, (UINTN)_DataByte) +#define inp(_Port) (UINT8)ReadPort(GlobalIoFncs, IO_UINT8, (UINTN)_Port) +#define outpw(_Port, _DataByte) (UINT16)WritePort(GlobalIoFncs, IO_UINT16, (UINTN)_Port, (UINTN)_DataByte) +#define inpw(_Port) (UINT16)ReadPort(GlobalIoFncs, IO_UINT16, (UINTN)_Port) +#define outpd(_Port, _DataByte) (UINT32)WritePort(GlobalIoFncs, IO_UINT32, (UINTN)_Port, (UINTN)_DataByte) +#define inpd(_Port) (UINT32)ReadPort(GlobalIoFncs, IO_UINT32, (UINTN)_Port) + +#define writepci8(_Addr, _DataByte) (UINT8)WritePciConfig(GlobalIoFncs, IO_UINT8, (UINTN)_Addr, (UINTN)_DataByte) +#define readpci8(_Addr) (UINT8)ReadPciConfig(GlobalIoFncs, IO_UINT8, (UINTN)_Addr) +#define writepci16(_Addr, _DataByte) (UINT16)WritePciConfig(GlobalIoFncs, IO_UINT16, (UINTN)_Addr, (UINTN)_DataByte) +#define readpci16(_Addr) (UINT16)ReadPciConfig(GlobalIoFncs, IO_UINT16, (UINTN)_Addr) +#define writepci32(_Addr, _DataByte) (UINT32)WritePciConfig(GlobalIoFncs, IO_UINT32, (UINTN)_Addr, (UINTN)_DataByte) +#define readpci32(_Addr) (UINT32)ReadPciConfig(GlobalIoFncs, IO_UINT32, (UINTN)_Addr) + +#define Pause() WaitForSingleEvent (ST->ConIn->WaitForKey, 0) +#define Port80(_PostCode) GlobalIoFncs->Io.Write (GlobalIoFncs, IO_UINT16, (UINT64)0x80, 1, &(_PostCode)) + +#endif diff --git a/efi32/include/efi/efilink.h b/efi32/include/efi/efilink.h new file mode 100644 index 00000000..b2ff4fa2 --- /dev/null +++ b/efi32/include/efi/efilink.h @@ -0,0 +1,177 @@ +#ifndef _EFI_LINK_H +#define _EFI_LINK_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + link.h (renamed efilink.h to avoid conflicts) + +Abstract: + + EFI link list macro's + + + +Revision History + +--*/ + +#ifndef EFI_NT_EMUL + +// +// List entry - doubly linked list +// + +typedef struct _LIST_ENTRY { + struct _LIST_ENTRY *Flink; + struct _LIST_ENTRY *Blink; +} LIST_ENTRY; + +#endif + + +// +// VOID +// InitializeListHead( +// LIST_ENTRY *ListHead +// ); +// + +#define InitializeListHead(ListHead) \ + (ListHead)->Flink = ListHead; \ + (ListHead)->Blink = ListHead; + +// +// BOOLEAN +// IsListEmpty( +// PLIST_ENTRY ListHead +// ); +// + +#define IsListEmpty(ListHead) \ + ((ListHead)->Flink == (ListHead)) + +// +// VOID +// RemoveEntryList( +// PLIST_ENTRY Entry +// ); +// + +#define _RemoveEntryList(Entry) { \ + LIST_ENTRY *_Blink, *_Flink; \ + _Flink = (Entry)->Flink; \ + _Blink = (Entry)->Blink; \ + _Blink->Flink = _Flink; \ + _Flink->Blink = _Blink; \ + } + +#if EFI_DEBUG + #define RemoveEntryList(Entry) \ + _RemoveEntryList(Entry); \ + (Entry)->Flink = (LIST_ENTRY *) BAD_POINTER; \ + (Entry)->Blink = (LIST_ENTRY *) BAD_POINTER; +#else + #define RemoveEntryList(Entry) \ + _RemoveEntryList(Entry); +#endif + +// +// VOID +// InsertTailList( +// PLIST_ENTRY ListHead, +// PLIST_ENTRY Entry +// ); +// + +#define InsertTailList(ListHead,Entry) {\ + LIST_ENTRY *_ListHead, *_Blink; \ + _ListHead = (ListHead); \ + _Blink = _ListHead->Blink; \ + (Entry)->Flink = _ListHead; \ + (Entry)->Blink = _Blink; \ + _Blink->Flink = (Entry); \ + _ListHead->Blink = (Entry); \ + } + +// +// VOID +// InsertHeadList( +// PLIST_ENTRY ListHead, +// PLIST_ENTRY Entry +// ); +// + +#define InsertHeadList(ListHead,Entry) {\ + LIST_ENTRY *_ListHead, *_Flink; \ + _ListHead = (ListHead); \ + _Flink = _ListHead->Flink; \ + (Entry)->Flink = _Flink; \ + (Entry)->Blink = _ListHead; \ + _Flink->Blink = (Entry); \ + _ListHead->Flink = (Entry); \ + } + +// VOID +// SwapListEntries( +// PLIST_ENTRY Entry1, +// PLIST_ENTRY Entry2 +// ); +// +// Put Entry2 before Entry1 +// +#define SwapListEntries(Entry1,Entry2) {\ + LIST_ENTRY *Entry1Flink, *Entry1Blink; \ + LIST_ENTRY *Entry2Flink, *Entry2Blink; \ + Entry2Flink = (Entry2)->Flink; \ + Entry2Blink = (Entry2)->Blink; \ + Entry1Flink = (Entry1)->Flink; \ + Entry1Blink = (Entry1)->Blink; \ + Entry2Blink->Flink = Entry2Flink; \ + Entry2Flink->Blink = Entry2Blink; \ + (Entry2)->Flink = Entry1; \ + (Entry2)->Blink = Entry1Blink; \ + Entry1Blink->Flink = (Entry2); \ + (Entry1)->Blink = (Entry2); \ + } + +// +// EFI_FIELD_OFFSET - returns the byte offset to a field within a structure +// + +#define EFI_FIELD_OFFSET(TYPE,Field) ((UINTN)(&(((TYPE *) 0)->Field))) + +// +// CONTAINING_RECORD - returns a pointer to the structure +// from one of it's elements. +// + +#define _CR(Record, TYPE, Field) \ + ((TYPE *) ( (CHAR8 *)(Record) - (CHAR8 *) &(((TYPE *) 0)->Field))) + +#if EFI_DEBUG + #define CR(Record, TYPE, Field, Sig) \ + _CR(Record, TYPE, Field)->Signature != Sig ? \ + (TYPE *) ASSERT_STRUCT(_CR(Record, TYPE, Field), Record) : \ + _CR(Record, TYPE, Field) +#else + #define CR(Record, TYPE, Field, Signature) \ + _CR(Record, TYPE, Field) +#endif + + +// +// A lock structure +// + +typedef struct _FLOCK { + EFI_TPL Tpl; + EFI_TPL OwnerTpl; + UINTN Lock; +} FLOCK; + +#endif + diff --git a/efi32/include/efi/efinet.h b/efi32/include/efi/efinet.h new file mode 100644 index 00000000..b2e5aa8a --- /dev/null +++ b/efi32/include/efi/efinet.h @@ -0,0 +1,340 @@ +#ifndef _EFINET_H +#define _EFINET_H + + +/*++ +Copyright (c) 1999 Intel Corporation + +Module Name: + efinet.h + +Abstract: + EFI Simple Network protocol + +Revision History +--*/ + + +/////////////////////////////////////////////////////////////////////////////// +// +// Simple Network Protocol +// + +#define EFI_SIMPLE_NETWORK_PROTOCOL \ + { 0xA19832B9, 0xAC25, 0x11D3, {0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D} } + + +INTERFACE_DECL(_EFI_SIMPLE_NETWORK); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef struct { + // + // Total number of frames received. Includes frames with errors and + // dropped frames. + // + UINT64 RxTotalFrames; + + // + // Number of valid frames received and copied into receive buffers. + // + UINT64 RxGoodFrames; + + // + // Number of frames below the minimum length for the media. + // This would be <64 for ethernet. + // + UINT64 RxUndersizeFrames; + + // + // Number of frames longer than the maxminum length for the + // media. This would be >1500 for ethernet. + // + UINT64 RxOversizeFrames; + + // + // Valid frames that were dropped because receive buffers were full. + // + UINT64 RxDroppedFrames; + + // + // Number of valid unicast frames received and not dropped. + // + UINT64 RxUnicastFrames; + + // + // Number of valid broadcast frames received and not dropped. + // + UINT64 RxBroadcastFrames; + + // + // Number of valid mutlicast frames received and not dropped. + // + UINT64 RxMulticastFrames; + + // + // Number of frames w/ CRC or alignment errors. + // + UINT64 RxCrcErrorFrames; + + // + // Total number of bytes received. Includes frames with errors + // and dropped frames. + // + UINT64 RxTotalBytes; + + // + // Transmit statistics. + // + UINT64 TxTotalFrames; + UINT64 TxGoodFrames; + UINT64 TxUndersizeFrames; + UINT64 TxOversizeFrames; + UINT64 TxDroppedFrames; + UINT64 TxUnicastFrames; + UINT64 TxBroadcastFrames; + UINT64 TxMulticastFrames; + UINT64 TxCrcErrorFrames; + UINT64 TxTotalBytes; + + // + // Number of collisions detection on this subnet. + // + UINT64 Collisions; + + // + // Number of frames destined for unsupported protocol. + // + UINT64 UnsupportedProtocol; + +} EFI_NETWORK_STATISTICS; + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef enum { + EfiSimpleNetworkStopped, + EfiSimpleNetworkStarted, + EfiSimpleNetworkInitialized, + EfiSimpleNetworkMaxState +} EFI_SIMPLE_NETWORK_STATE; + +/////////////////////////////////////////////////////////////////////////////// +// + +#define EFI_SIMPLE_NETWORK_RECEIVE_UNICAST 0x01 +#define EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST 0x02 +#define EFI_SIMPLE_NETWORK_RECEIVE_BROADCAST 0x04 +#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS 0x08 +#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS_MULTICAST 0x10 + +/////////////////////////////////////////////////////////////////////////////// +// + +#define EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT 0x01 +#define EFI_SIMPLE_NETWORK_TRANSMIT_INTERRUPT 0x02 +#define EFI_SIMPLE_NETWORK_COMMAND_INTERRUPT 0x04 +#define EFI_SIMPLE_NETWORK_SOFTWARE_INTERRUPT 0x08 + +/////////////////////////////////////////////////////////////////////////////// +// +#define MAX_MCAST_FILTER_CNT 16 +typedef struct { + UINT32 State; + UINT32 HwAddressSize; + UINT32 MediaHeaderSize; + UINT32 MaxPacketSize; + UINT32 NvRamSize; + UINT32 NvRamAccessSize; + UINT32 ReceiveFilterMask; + UINT32 ReceiveFilterSetting; + UINT32 MaxMCastFilterCount; + UINT32 MCastFilterCount; + EFI_MAC_ADDRESS MCastFilter[MAX_MCAST_FILTER_CNT]; + EFI_MAC_ADDRESS CurrentAddress; + EFI_MAC_ADDRESS BroadcastAddress; + EFI_MAC_ADDRESS PermanentAddress; + UINT8 IfType; + BOOLEAN MacAddressChangeable; + BOOLEAN MultipleTxSupported; + BOOLEAN MediaPresentSupported; + BOOLEAN MediaPresent; +} EFI_SIMPLE_NETWORK_MODE; + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_START) ( + IN struct _EFI_SIMPLE_NETWORK *This +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_STOP) ( + IN struct _EFI_SIMPLE_NETWORK *This +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_INITIALIZE) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN UINTN ExtraRxBufferSize OPTIONAL, + IN UINTN ExtraTxBufferSize OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_RESET) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN ExtendedVerification +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_SHUTDOWN) ( + IN struct _EFI_SIMPLE_NETWORK *This +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_RECEIVE_FILTERS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN UINT32 Enable, + IN UINT32 Disable, + IN BOOLEAN ResetMCastFilter, + IN UINTN MCastFilterCnt OPTIONAL, + IN EFI_MAC_ADDRESS *MCastFilter OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_STATION_ADDRESS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN Reset, + IN EFI_MAC_ADDRESS *New OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_STATISTICS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN Reset, + IN OUT UINTN *StatisticsSize OPTIONAL, + OUT EFI_NETWORK_STATISTICS *StatisticsTable OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN IPv6, + IN EFI_IP_ADDRESS *IP, + OUT EFI_MAC_ADDRESS *MAC +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_NVDATA) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN ReadWrite, + IN UINTN Offset, + IN UINTN BufferSize, + IN OUT VOID *Buffer +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_GET_STATUS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + OUT UINT32 *InterruptStatus OPTIONAL, + OUT VOID **TxBuf OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_TRANSMIT) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN UINTN HeaderSize, + IN UINTN BufferSize, + IN VOID *Buffer, + IN EFI_MAC_ADDRESS *SrcAddr OPTIONAL, + IN EFI_MAC_ADDRESS *DestAddr OPTIONAL, + IN UINT16 *Protocol OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_RECEIVE) ( + IN struct _EFI_SIMPLE_NETWORK *This, + OUT UINTN *HeaderSize OPTIONAL, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer, + OUT EFI_MAC_ADDRESS *SrcAddr OPTIONAL, + OUT EFI_MAC_ADDRESS *DestAddr OPTIONAL, + OUT UINT16 *Protocol OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +#define EFI_SIMPLE_NETWORK_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_SIMPLE_NETWORK { + UINT64 Revision; + EFI_SIMPLE_NETWORK_START Start; + EFI_SIMPLE_NETWORK_STOP Stop; + EFI_SIMPLE_NETWORK_INITIALIZE Initialize; + EFI_SIMPLE_NETWORK_RESET Reset; + EFI_SIMPLE_NETWORK_SHUTDOWN Shutdown; + EFI_SIMPLE_NETWORK_RECEIVE_FILTERS ReceiveFilters; + EFI_SIMPLE_NETWORK_STATION_ADDRESS StationAddress; + EFI_SIMPLE_NETWORK_STATISTICS Statistics; + EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC MCastIpToMac; + EFI_SIMPLE_NETWORK_NVDATA NvData; + EFI_SIMPLE_NETWORK_GET_STATUS GetStatus; + EFI_SIMPLE_NETWORK_TRANSMIT Transmit; + EFI_SIMPLE_NETWORK_RECEIVE Receive; + EFI_EVENT WaitForPacket; + EFI_SIMPLE_NETWORK_MODE *Mode; +} EFI_SIMPLE_NETWORK; + +#endif /* _EFINET_H */ diff --git a/efi32/include/efi/efipart.h b/efi32/include/efi/efipart.h new file mode 100644 index 00000000..d4c55731 --- /dev/null +++ b/efi32/include/efi/efipart.h @@ -0,0 +1,61 @@ +#ifndef _EFI_PART_H +#define _EFI_PART_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efipart.h + +Abstract: + Info about disk partitions and Master Boot Records + + + + +Revision History + +--*/ + +// +// +// + +#define EFI_PARTITION 0xef +#define MBR_SIZE 512 + +#pragma pack(1) + +typedef struct { + UINT8 BootIndicator; + UINT8 StartHead; + UINT8 StartSector; + UINT8 StartTrack; + UINT8 OSIndicator; + UINT8 EndHead; + UINT8 EndSector; + UINT8 EndTrack; + UINT8 StartingLBA[4]; + UINT8 SizeInLBA[4]; +} MBR_PARTITION_RECORD; + +#define EXTRACT_UINT32(D) (UINT32)(D[0] | (D[1] << 8) | (D[2] << 16) | (D[3] << 24)) + +#define MBR_SIGNATURE 0xaa55 +#define MIN_MBR_DEVICE_SIZE 0x80000 +#define MBR_ERRATA_PAD 0x40000 // 128 MB + +#define MAX_MBR_PARTITIONS 4 +typedef struct { + UINT8 BootStrapCode[440]; + UINT8 UniqueMbrSignature[4]; + UINT8 Unknown[2]; + MBR_PARTITION_RECORD Partition[MAX_MBR_PARTITIONS]; + UINT16 Signature; +} MASTER_BOOT_RECORD; +#pragma pack() + + +#endif diff --git a/efi32/include/efi/efipciio.h b/efi32/include/efi/efipciio.h new file mode 100644 index 00000000..0724f957 --- /dev/null +++ b/efi32/include/efi/efipciio.h @@ -0,0 +1,219 @@ +#ifndef _EFI_PCI_IO_H +#define _EFI_PCI_IO_H + +#define EFI_PCI_IO_PROTOCOL \ + { 0x4cf5b200, 0x68b8, 0x4ca5, {0x9e, 0xec, 0xb2, 0x3e, 0x3f, 0x50, 0x02, 0x9a} } + +INTERFACE_DECL(_EFI_PCI_IO); + +typedef enum { + EfiPciIoWidthUint8, + EfiPciIoWidthUint16, + EfiPciIoWidthUint32, + EfiPciIoWidthUint64, + EfiPciIoWidthFifoUint8, + EfiPciIoWidthFifoUint16, + EfiPciIoWidthFifoUint32, + EfiPciIoWidthFifoUint64, + EfiPciIoWidthFillUint8, + EfiPciIoWidthFillUint16, + EfiPciIoWidthFillUint32, + EfiPciIoWidthFillUint64, + EfiPciIoWidthMaximum +} EFI_PCI_IO_PROTOCOL_WIDTH; + +#define EFI_PCI_IO_PASS_THROUGH_BAR 0xff + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_POLL_IO_MEM) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT8 BarIndex, + IN UINT64 Offset, + IN UINT64 Mask, + IN UINT64 Value, + IN UINT64 Delay, + OUT UINT64 *Result + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_IO_MEM) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT8 BarIndex, + IN UINT64 Offset, + IN UINTN Count, + IN OUT VOID *Buffer +); + +typedef struct { + EFI_PCI_IO_PROTOCOL_IO_MEM Read; + EFI_PCI_IO_PROTOCOL_IO_MEM Write; +} EFI_PCI_IO_PROTOCOL_ACCESS; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_CONFIG) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT32 Offset, + IN UINTN Count, + IN OUT VOID *Buffer +); + +typedef struct { + EFI_PCI_IO_PROTOCOL_CONFIG Read; + EFI_PCI_IO_PROTOCOL_CONFIG Write; +} EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_COPY_MEM) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT8 DestBarIndex, + IN UINT64 DestOffset, + IN UINT8 SrcBarIndex, + IN UINT64 SrcOffset, + IN UINTN Count + ); + +typedef enum { + EfiPciIoOperationBusMasterRead, + EfiPciIoOperationBusMasterWrite, + EfiPciIoOperationBusMasterCommonBuffer, + EfiPciIoOperationMaximum +} EFI_PCI_IO_PROTOCOL_OPERATION; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_MAP) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_OPERATION Operation, + IN VOID *HostAddress, + IN OUT UINTN *NumberOfBytes, + OUT EFI_PHYSICAL_ADDRESS *DeviceAddress, + OUT VOID **Mapping + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_UNMAP) ( + IN struct _EFI_PCI_IO *This, + IN VOID *Mapping +); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_ALLOCATE_BUFFER) ( + IN struct _EFI_PCI_IO *This, + IN EFI_ALLOCATE_TYPE Type, + IN EFI_MEMORY_TYPE MemoryType, + IN UINTN Pages, + OUT VOID **HostAddress, + IN UINT64 Attributes + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_FREE_BUFFER) ( + IN struct _EFI_PCI_IO *This, + IN UINTN Pages, + IN VOID *HostAddress + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_FLUSH) ( + IN struct _EFI_PCI_IO *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_GET_LOCATION) ( + IN struct _EFI_PCI_IO *This, + OUT UINTN *SegmentNumber, + OUT UINTN *BusNumber, + OUT UINTN *DeviceNumber, + OUT UINTN *FunctionNumber + ); + +#define EFI_PCI_IO_ATTRIBUTE_ISA_IO 0x0002 +#define EFI_PCI_IO_ATTRIBUTE_VGA_PALETTE_IO 0x0004 +#define EFI_PCI_IO_ATTRIBUTE_VGA_MEMORY 0x0008 +#define EFI_PCI_IO_ATTRIBUTE_VGA_IO 0x0010 +#define EFI_PCI_IO_ATTRIBUTE_IDE_PRIMARY_IO 0x0020 +#define EFI_PCI_IO_ATTRIBUTE_IDE_SECONDARY_IO 0x0040 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY_WRITE_COMBINE 0x0080 +#define EFI_PCI_IO_ATTRIBUTE_IO 0x0100 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY 0x0200 +#define EFI_PCI_IO_ATTRIBUTE_BUS_MASTER 0x0400 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY_CACHED 0x0800 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY_DISABLE 0x1000 +#define EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE 0x2000 +#define EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM 0x4000 +#define EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE 0x8000 +#define EFI_PCI_IO_ATTRIBUTE_ISA_IO_16 0x10000 +#define EFI_PCI_IO_ATTRIBUTE_VGA_PALETTE_IO_16 0x20000 +#define EFI_PCI_IO_ATTRIBUTE_VGA_IO_16 0x40000 + +typedef enum { + EfiPciIoAttributeOperationGet, + EfiPciIoAttributeOperationSet, + EfiPciIoAttributeOperationEnable, + EfiPciIoAttributeOperationDisable, + EfiPciIoAttributeOperationSupported, + EfiPciIoAttributeOperationMaximum +} EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_ATTRIBUTES) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION Operation, + IN UINT64 Attributes, + OUT UINT64 *Result OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES) ( + IN struct _EFI_PCI_IO *This, + IN UINT8 BarIndex, + OUT UINT64 *Supports OPTIONAL, + OUT VOID **Resources OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES) ( + IN struct _EFI_PCI_IO *This, + IN UINT64 Attributes, + IN UINT8 BarIndex, + IN OUT UINT64 *Offset, + IN OUT UINT64 *Length + ); + +typedef struct _EFI_PCI_IO { + EFI_PCI_IO_PROTOCOL_POLL_IO_MEM PollMem; + EFI_PCI_IO_PROTOCOL_POLL_IO_MEM PollIo; + EFI_PCI_IO_PROTOCOL_ACCESS Mem; + EFI_PCI_IO_PROTOCOL_ACCESS Io; + EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS Pci; + EFI_PCI_IO_PROTOCOL_COPY_MEM CopyMem; + EFI_PCI_IO_PROTOCOL_MAP Map; + EFI_PCI_IO_PROTOCOL_UNMAP Unmap; + EFI_PCI_IO_PROTOCOL_ALLOCATE_BUFFER AllocateBuffer; + EFI_PCI_IO_PROTOCOL_FREE_BUFFER FreeBuffer; + EFI_PCI_IO_PROTOCOL_FLUSH Flush; + EFI_PCI_IO_PROTOCOL_GET_LOCATION GetLocation; + EFI_PCI_IO_PROTOCOL_ATTRIBUTES Attributes; + EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES GetBarAttributes; + EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES SetBarAttributes; + UINT64 RomSize; + VOID *RomImage; +} EFI_PCI_IO; + +#endif /* _EFI_PCI_IO_H */ diff --git a/efi32/include/efi/efiprot.h b/efi32/include/efi/efiprot.h new file mode 100644 index 00000000..fd76ec51 --- /dev/null +++ b/efi32/include/efi/efiprot.h @@ -0,0 +1,757 @@ +#ifndef _EFI_PROT_H +#define _EFI_PROT_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efiprot.h + +Abstract: + + EFI Protocols + + + +Revision History + +--*/ + +// +// FPSWA library protocol +// +#define FPSWA_PROTOCOL \ + { 0xc41b6531, 0x97b9, 0x11d3, {0x9a, 0x29, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +// +// Device Path protocol +// + +#define DEVICE_PATH_PROTOCOL \ + { 0x9576e91, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + + +// +// Block IO protocol +// + +#define BLOCK_IO_PROTOCOL \ + { 0x964e5b21, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } +#define EFI_BLOCK_IO_INTERFACE_REVISION 0x00010000 +#define EFI_BLOCK_IO_INTERFACE_REVISION2 0x00020001 +#define EFI_BLOCK_IO_INTERFACE_REVISION3 ((2<<16) | 31) + +INTERFACE_DECL(_EFI_BLOCK_IO); + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_RESET) ( + IN struct _EFI_BLOCK_IO *This, + IN BOOLEAN ExtendedVerification + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_READ) ( + IN struct _EFI_BLOCK_IO *This, + IN UINT32 MediaId, + IN EFI_LBA LBA, + IN UINTN BufferSize, + OUT VOID *Buffer + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_WRITE) ( + IN struct _EFI_BLOCK_IO *This, + IN UINT32 MediaId, + IN EFI_LBA LBA, + IN UINTN BufferSize, + IN VOID *Buffer + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_FLUSH) ( + IN struct _EFI_BLOCK_IO *This + ); + + + +typedef struct { + UINT32 MediaId; + BOOLEAN RemovableMedia; + BOOLEAN MediaPresent; + + BOOLEAN LogicalPartition; + BOOLEAN ReadOnly; + BOOLEAN WriteCaching; + + UINT32 BlockSize; + UINT32 IoAlign; + + EFI_LBA LastBlock; + + /* revision 2 */ + EFI_LBA LowestAlignedLba; + UINT32 LogicalBlocksPerPhysicalBlock; + /* revision 3 */ + UINT32 OptimalTransferLengthGranularity; +} EFI_BLOCK_IO_MEDIA; + +typedef struct _EFI_BLOCK_IO { + UINT64 Revision; + + EFI_BLOCK_IO_MEDIA *Media; + + EFI_BLOCK_RESET Reset; + EFI_BLOCK_READ ReadBlocks; + EFI_BLOCK_WRITE WriteBlocks; + EFI_BLOCK_FLUSH FlushBlocks; + +} EFI_BLOCK_IO; + + + +// +// Disk Block IO protocol +// + +#define DISK_IO_PROTOCOL \ + { 0xce345171, 0xba0b, 0x11d2, {0x8e, 0x4f, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } +#define EFI_DISK_IO_INTERFACE_REVISION 0x00010000 + +INTERFACE_DECL(_EFI_DISK_IO); + +typedef +EFI_STATUS +(EFIAPI *EFI_DISK_READ) ( + IN struct _EFI_DISK_IO *This, + IN UINT32 MediaId, + IN UINT64 Offset, + IN UINTN BufferSize, + OUT VOID *Buffer + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_DISK_WRITE) ( + IN struct _EFI_DISK_IO *This, + IN UINT32 MediaId, + IN UINT64 Offset, + IN UINTN BufferSize, + IN VOID *Buffer + ); + + +typedef struct _EFI_DISK_IO { + UINT64 Revision; + EFI_DISK_READ ReadDisk; + EFI_DISK_WRITE WriteDisk; +} EFI_DISK_IO; + + +// +// Simple file system protocol +// + +#define SIMPLE_FILE_SYSTEM_PROTOCOL \ + { 0x964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_EFI_FILE_IO_INTERFACE); +INTERFACE_DECL(_EFI_FILE_HANDLE); + +typedef +EFI_STATUS +(EFIAPI *EFI_VOLUME_OPEN) ( + IN struct _EFI_FILE_IO_INTERFACE *This, + OUT struct _EFI_FILE_HANDLE **Root + ); + +#define EFI_FILE_IO_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_FILE_IO_INTERFACE { + UINT64 Revision; + EFI_VOLUME_OPEN OpenVolume; +} EFI_FILE_IO_INTERFACE; + +// +// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_OPEN) ( + IN struct _EFI_FILE_HANDLE *File, + OUT struct _EFI_FILE_HANDLE **NewHandle, + IN CHAR16 *FileName, + IN UINT64 OpenMode, + IN UINT64 Attributes + ); + +// Open modes +#define EFI_FILE_MODE_READ 0x0000000000000001 +#define EFI_FILE_MODE_WRITE 0x0000000000000002 +#define EFI_FILE_MODE_CREATE 0x8000000000000000 + +// File attributes +#define EFI_FILE_READ_ONLY 0x0000000000000001 +#define EFI_FILE_HIDDEN 0x0000000000000002 +#define EFI_FILE_SYSTEM 0x0000000000000004 +#define EFI_FILE_RESERVIED 0x0000000000000008 +#define EFI_FILE_DIRECTORY 0x0000000000000010 +#define EFI_FILE_ARCHIVE 0x0000000000000020 +#define EFI_FILE_VALID_ATTR 0x0000000000000037 + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_CLOSE) ( + IN struct _EFI_FILE_HANDLE *File + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_DELETE) ( + IN struct _EFI_FILE_HANDLE *File + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_READ) ( + IN struct _EFI_FILE_HANDLE *File, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_WRITE) ( + IN struct _EFI_FILE_HANDLE *File, + IN OUT UINTN *BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_SET_POSITION) ( + IN struct _EFI_FILE_HANDLE *File, + IN UINT64 Position + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_GET_POSITION) ( + IN struct _EFI_FILE_HANDLE *File, + OUT UINT64 *Position + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_GET_INFO) ( + IN struct _EFI_FILE_HANDLE *File, + IN EFI_GUID *InformationType, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_SET_INFO) ( + IN struct _EFI_FILE_HANDLE *File, + IN EFI_GUID *InformationType, + IN UINTN BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_FLUSH) ( + IN struct _EFI_FILE_HANDLE *File + ); + + + +#define EFI_FILE_HANDLE_REVISION 0x00010000 +typedef struct _EFI_FILE_HANDLE { + UINT64 Revision; + EFI_FILE_OPEN Open; + EFI_FILE_CLOSE Close; + EFI_FILE_DELETE Delete; + EFI_FILE_READ Read; + EFI_FILE_WRITE Write; + EFI_FILE_GET_POSITION GetPosition; + EFI_FILE_SET_POSITION SetPosition; + EFI_FILE_GET_INFO GetInfo; + EFI_FILE_SET_INFO SetInfo; + EFI_FILE_FLUSH Flush; +} EFI_FILE, *EFI_FILE_HANDLE; + + +// +// File information types +// + +#define EFI_FILE_INFO_ID \ + { 0x9576e92, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +typedef struct { + UINT64 Size; + UINT64 FileSize; + UINT64 PhysicalSize; + EFI_TIME CreateTime; + EFI_TIME LastAccessTime; + EFI_TIME ModificationTime; + UINT64 Attribute; + CHAR16 FileName[1]; +} EFI_FILE_INFO; + +// +// The FileName field of the EFI_FILE_INFO data structure is variable length. +// Whenever code needs to know the size of the EFI_FILE_INFO data structure, it needs to +// be the size of the data structure without the FileName field. The following macro +// computes this size correctly no matter how big the FileName array is declared. +// This is required to make the EFI_FILE_INFO data structure ANSI compilant. +// + +#define SIZE_OF_EFI_FILE_INFO EFI_FIELD_OFFSET(EFI_FILE_INFO,FileName) + +#define EFI_FILE_SYSTEM_INFO_ID \ + { 0x9576e93, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +typedef struct { + UINT64 Size; + BOOLEAN ReadOnly; + UINT64 VolumeSize; + UINT64 FreeSpace; + UINT32 BlockSize; + CHAR16 VolumeLabel[1]; +} EFI_FILE_SYSTEM_INFO; + +// +// The VolumeLabel field of the EFI_FILE_SYSTEM_INFO data structure is variable length. +// Whenever code needs to know the size of the EFI_FILE_SYSTEM_INFO data structure, it needs +// to be the size of the data structure without the VolumeLable field. The following macro +// computes this size correctly no matter how big the VolumeLable array is declared. +// This is required to make the EFI_FILE_SYSTEM_INFO data structure ANSI compilant. +// + +#define SIZE_OF_EFI_FILE_SYSTEM_INFO EFI_FIELD_OFFSET(EFI_FILE_SYSTEM_INFO,VolumeLabel) + +#define EFI_FILE_SYSTEM_VOLUME_LABEL_INFO_ID \ + { 0xDB47D7D3,0xFE81, 0x11d3, {0x9A, 0x35, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D} } + +typedef struct { + CHAR16 VolumeLabel[1]; +} EFI_FILE_SYSTEM_VOLUME_LABEL_INFO; + +#define SIZE_OF_EFI_FILE_SYSTEM_VOLUME_LABEL_INFO EFI_FIELD_OFFSET(EFI_FILE_SYSTEM_VOLUME_LABEL_INFO,VolumeLabel) + +// +// Load file protocol +// + + +#define LOAD_FILE_PROTOCOL \ + { 0x56EC3091, 0x954C, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} } + +INTERFACE_DECL(_EFI_LOAD_FILE_INTERFACE); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOAD_FILE) ( + IN struct _EFI_LOAD_FILE_INTERFACE *This, + IN EFI_DEVICE_PATH *FilePath, + IN BOOLEAN BootPolicy, + IN OUT UINTN *BufferSize, + IN VOID *Buffer OPTIONAL + ); + +typedef struct _EFI_LOAD_FILE_INTERFACE { + EFI_LOAD_FILE LoadFile; +} EFI_LOAD_FILE_INTERFACE; + + +// +// Device IO protocol +// + +#define DEVICE_IO_PROTOCOL \ + { 0xaf6ac311, 0x84c3, 0x11d2, {0x8e, 0x3c, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_EFI_DEVICE_IO_INTERFACE); + +typedef enum { + IO_UINT8, + IO_UINT16, + IO_UINT32, + IO_UINT64, +// +// Specification Change: Copy from MMIO to MMIO vs. MMIO to buffer, buffer to MMIO +// + MMIO_COPY_UINT8, + MMIO_COPY_UINT16, + MMIO_COPY_UINT32, + MMIO_COPY_UINT64 +} EFI_IO_WIDTH; + +#define EFI_PCI_ADDRESS(_bus,_dev,_func) \ + ( (UINT64) ( (((UINTN)_bus) << 24) + (((UINTN)_dev) << 16) + (((UINTN)_func) << 8) ) ) + + +typedef +EFI_STATUS +(EFIAPI *EFI_DEVICE_IO) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN EFI_IO_WIDTH Width, + IN UINT64 Address, + IN UINTN Count, + IN OUT VOID *Buffer + ); + +typedef struct { + EFI_DEVICE_IO Read; + EFI_DEVICE_IO Write; +} EFI_IO_ACCESS; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_DEVICE_PATH) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN UINT64 Address, + IN OUT EFI_DEVICE_PATH **PciDevicePath + ); + +typedef enum { + EfiBusMasterRead, + EfiBusMasterWrite, + EfiBusMasterCommonBuffer +} EFI_IO_OPERATION_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_MAP) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN EFI_IO_OPERATION_TYPE Operation, + IN EFI_PHYSICAL_ADDRESS *HostAddress, + IN OUT UINTN *NumberOfBytes, + OUT EFI_PHYSICAL_ADDRESS *DeviceAddress, + OUT VOID **Mapping + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_UNMAP) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN VOID *Mapping + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_ALLOCATE_BUFFER) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN EFI_ALLOCATE_TYPE Type, + IN EFI_MEMORY_TYPE MemoryType, + IN UINTN Pages, + IN OUT EFI_PHYSICAL_ADDRESS *HostAddress + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_FLUSH) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_FREE_BUFFER) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN UINTN Pages, + IN EFI_PHYSICAL_ADDRESS HostAddress + ); + +typedef struct _EFI_DEVICE_IO_INTERFACE { + EFI_IO_ACCESS Mem; + EFI_IO_ACCESS Io; + EFI_IO_ACCESS Pci; + EFI_IO_MAP Map; + EFI_PCI_DEVICE_PATH PciDevicePath; + EFI_IO_UNMAP Unmap; + EFI_IO_ALLOCATE_BUFFER AllocateBuffer; + EFI_IO_FLUSH Flush; + EFI_IO_FREE_BUFFER FreeBuffer; +} EFI_DEVICE_IO_INTERFACE; + + +// +// Unicode Collation protocol +// + +#define UNICODE_COLLATION_PROTOCOL \ + { 0x1d85cd7f, 0xf43d, 0x11d2, {0x9a, 0xc, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define UNICODE_BYTE_ORDER_MARK (CHAR16)(0xfeff) + +INTERFACE_DECL(_EFI_UNICODE_COLLATION_INTERFACE); + +typedef +INTN +(EFIAPI *EFI_UNICODE_STRICOLL) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN CHAR16 *s1, + IN CHAR16 *s2 + ); + +typedef +BOOLEAN +(EFIAPI *EFI_UNICODE_METAIMATCH) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN CHAR16 *String, + IN CHAR16 *Pattern + ); + +typedef +VOID +(EFIAPI *EFI_UNICODE_STRLWR) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN OUT CHAR16 *Str + ); + +typedef +VOID +(EFIAPI *EFI_UNICODE_STRUPR) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN OUT CHAR16 *Str + ); + +typedef +VOID +(EFIAPI *EFI_UNICODE_FATTOSTR) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN UINTN FatSize, + IN CHAR8 *Fat, + OUT CHAR16 *String + ); + +typedef +BOOLEAN +(EFIAPI *EFI_UNICODE_STRTOFAT) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN CHAR16 *String, + IN UINTN FatSize, + OUT CHAR8 *Fat + ); + + +typedef struct _EFI_UNICODE_COLLATION_INTERFACE { + + // general + EFI_UNICODE_STRICOLL StriColl; + EFI_UNICODE_METAIMATCH MetaiMatch; + EFI_UNICODE_STRLWR StrLwr; + EFI_UNICODE_STRUPR StrUpr; + + // for supporting fat volumes + EFI_UNICODE_FATTOSTR FatToStr; + EFI_UNICODE_STRTOFAT StrToFat; + + CHAR8 *SupportedLanguages; +} EFI_UNICODE_COLLATION_INTERFACE; + +/* Graphics output protocol */ +#define EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID \ + { \ + 0x9042a9de, 0x23dc, 0x4a38, {0x96, 0xfb, 0x7a, 0xde, 0xd0, 0x80, 0x51, 0x6a } \ + } + +typedef struct _EFI_GRAPHICS_OUTPUT_PROTOCOL EFI_GRAPHICS_OUTPUT_PROTOCOL; + +typedef struct { + UINT32 RedMask; + UINT32 GreenMask; + UINT32 BlueMask; + UINT32 ReservedMask; +} EFI_PIXEL_BITMASK; + +typedef enum { + PixelRedGreenBlueReserved8BitPerColor, + PixelBlueGreenRedReserved8BitPerColor, + PixelBitMask, + PixelBltOnly, + PixelFormatMax +} EFI_GRAPHICS_PIXEL_FORMAT; + +typedef struct { + UINT32 Version; + UINT32 HorizontalResolution; + UINT32 VerticalResolution; + EFI_GRAPHICS_PIXEL_FORMAT PixelFormat; + EFI_PIXEL_BITMASK PixelInformation; + UINT32 PixelsPerScanLine; +} EFI_GRAPHICS_OUTPUT_MODE_INFORMATION; + +/** + Return the current video mode information. + + @param This Protocol instance pointer. + @param ModeNumber The mode number to return information on. + @param SizeOfInfo A pointer to the size, in bytes, of the Info buffer. + @param Info A pointer to callee allocated buffer that returns information about ModeNumber. + + @retval EFI_SUCCESS Mode information returned. + @retval EFI_BUFFER_TOO_SMALL The Info buffer was too small. + @retval EFI_DEVICE_ERROR A hardware error occurred trying to retrieve the video mode. + @retval EFI_NOT_STARTED Video display is not initialized. Call SetMode () + @retval EFI_INVALID_PARAMETER One of the input args was NULL. + +**/ +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE) ( + IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, + IN UINT32 ModeNumber, + OUT UINTN *SizeOfInfo, + OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info + ) +; + +/** + Return the current video mode information. + + @param This Protocol instance pointer. + @param ModeNumber The mode number to be set. + + @retval EFI_SUCCESS Graphics mode was changed. + @retval EFI_DEVICE_ERROR The device had an error and could not complete the request. + @retval EFI_UNSUPPORTED ModeNumber is not supported by this device. + +**/ +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE) ( + IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, + IN UINT32 ModeNumber + ); + +typedef struct { + UINT8 Blue; + UINT8 Green; + UINT8 Red; + UINT8 Reserved; +} EFI_GRAPHICS_OUTPUT_BLT_PIXEL; + +typedef union { + EFI_GRAPHICS_OUTPUT_BLT_PIXEL Pixel; + UINT32 Raw; +} EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION; + +typedef enum { + EfiBltVideoFill, + EfiBltVideoToBltBuffer, + EfiBltBufferToVideo, + EfiBltVideoToVideo, + EfiGraphicsOutputBltOperationMax +} EFI_GRAPHICS_OUTPUT_BLT_OPERATION; + +/** + The following table defines actions for BltOperations: + + EfiBltVideoFill - Write data from the BltBuffer pixel (SourceX, SourceY) + directly to every pixel of the video display rectangle + (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). + Only one pixel will be used from the BltBuffer. Delta is NOT used. + + EfiBltVideoToBltBuffer - Read data from the video display rectangle + (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in + the BltBuffer rectangle (DestinationX, DestinationY ) + (DestinationX + Width, DestinationY + Height). If DestinationX or + DestinationY is not zero then Delta must be set to the length in bytes + of a row in the BltBuffer. + + EfiBltBufferToVideo - Write data from the BltBuffer rectangle + (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the + video display rectangle (DestinationX, DestinationY) + (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is + not zero then Delta must be set to the length in bytes of a row in the + BltBuffer. + + EfiBltVideoToVideo - Copy from the video display rectangle (SourceX, SourceY) + (SourceX + Width, SourceY + Height) .to the video display rectangle + (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). + The BltBuffer and Delta are not used in this mode. + + @param This Protocol instance pointer. + @param BltBuffer Buffer containing data to blit into video buffer. This + buffer has a size of Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL) + @param BltOperation Operation to perform on BlitBuffer and video memory + @param SourceX X coordinate of source for the BltBuffer. + @param SourceY Y coordinate of source for the BltBuffer. + @param DestinationX X coordinate of destination for the BltBuffer. + @param DestinationY Y coordinate of destination for the BltBuffer. + @param Width Width of rectangle in BltBuffer in pixels. + @param Height Hight of rectangle in BltBuffer in pixels. + @param Delta OPTIONAL + + @retval EFI_SUCCESS The Blt operation completed. + @retval EFI_INVALID_PARAMETER BltOperation is not valid. + @retval EFI_DEVICE_ERROR A hardware error occured writting to the video buffer. + +**/ +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT) ( + IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer, OPTIONAL + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, + IN UINTN SourceX, + IN UINTN SourceY, + IN UINTN DestinationX, + IN UINTN DestinationY, + IN UINTN Width, + IN UINTN Height, + IN UINTN Delta OPTIONAL + ); + +typedef struct { + UINT32 MaxMode; + UINT32 Mode; + EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Info; + UINTN SizeOfInfo; + EFI_PHYSICAL_ADDRESS FrameBufferBase; + UINTN FrameBufferSize; +} EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE; + +struct _EFI_GRAPHICS_OUTPUT_PROTOCOL { + EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE QueryMode; + EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE SetMode; + EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT Blt; + EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *Mode; +}; + +INTERFACE_DECL(_EFI_SERVICE_BINDING); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERVICE_BINDING_CREATE_CHILD) ( + IN struct _EFI_SERVICE_BINDING *This, + IN EFI_HANDLE *ChildHandle + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERVICE_BINDING_DESTROY_CHILD) ( + IN struct _EFI_SERVICE_BINDING *This, + IN EFI_HANDLE ChildHandle + ); + +typedef struct _EFI_SERVICE_BINDING { + EFI_SERVICE_BINDING_CREATE_CHILD CreateChild; + EFI_SERVICE_BINDING_DESTROY_CHILD DestroyChild; +} EFI_SERVICE_BINDING; + +#endif + diff --git a/efi32/include/efi/efipxebc.h b/efi32/include/efi/efipxebc.h new file mode 100644 index 00000000..932382ae --- /dev/null +++ b/efi32/include/efi/efipxebc.h @@ -0,0 +1,464 @@ +#ifndef _EFIPXEBC_H +#define _EFIPXEBC_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efipxebc.h + +Abstract: + + EFI PXE Base Code Protocol + + + +Revision History + +--*/ + +// +// PXE Base Code protocol +// + +#define EFI_PXE_BASE_CODE_PROTOCOL \ + { 0x03c4e603, 0xac28, 0x11d3, {0x9a, 0x2d, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +INTERFACE_DECL(_EFI_PXE_BASE_CODE); + +#define DEFAULT_TTL 4 +#define DEFAULT_ToS 0 +// +// Address definitions +// + +typedef union { + UINT32 Addr[4]; + EFI_IPv4_ADDRESS v4; + EFI_IPv6_ADDRESS v6; +} EFI_IP_ADDRESS; + +typedef UINT16 EFI_PXE_BASE_CODE_UDP_PORT; + +// +// Packet definitions +// + +typedef struct { + UINT8 BootpOpcode; + UINT8 BootpHwType; + UINT8 BootpHwAddrLen; + UINT8 BootpGateHops; + UINT32 BootpIdent; + UINT16 BootpSeconds; + UINT16 BootpFlags; + UINT8 BootpCiAddr[4]; + UINT8 BootpYiAddr[4]; + UINT8 BootpSiAddr[4]; + UINT8 BootpGiAddr[4]; + UINT8 BootpHwAddr[16]; + UINT8 BootpSrvName[64]; + UINT8 BootpBootFile[128]; + UINT32 DhcpMagik; + UINT8 DhcpOptions[56]; +} EFI_PXE_BASE_CODE_DHCPV4_PACKET; + +typedef struct { + UINT32 MessageType:8; + UINT32 TransactionId:24; + UINT8 DhcpOptions[1024]; +} EFI_PXE_BASE_CODE_DHCPV6_PACKET; + +typedef union { + UINT8 Raw[1472]; + EFI_PXE_BASE_CODE_DHCPV4_PACKET Dhcpv4; + EFI_PXE_BASE_CODE_DHCPV6_PACKET Dhcpv6; +} EFI_PXE_BASE_CODE_PACKET; + +typedef struct { + UINT8 Type; + UINT8 Code; + UINT16 Checksum; + union { + UINT32 reserved; + UINT32 Mtu; + UINT32 Pointer; + struct { + UINT16 Identifier; + UINT16 Sequence; + } Echo; + } u; + UINT8 Data[494]; +} EFI_PXE_BASE_CODE_ICMP_ERROR; + +typedef struct { + UINT8 ErrorCode; + CHAR8 ErrorString[127]; +} EFI_PXE_BASE_CODE_TFTP_ERROR; + +// +// IP Receive Filter definitions +// +#define EFI_PXE_BASE_CODE_MAX_IPCNT 8 +typedef struct { + UINT8 Filters; + UINT8 IpCnt; + UINT16 reserved; + EFI_IP_ADDRESS IpList[EFI_PXE_BASE_CODE_MAX_IPCNT]; +} EFI_PXE_BASE_CODE_IP_FILTER; + +#define EFI_PXE_BASE_CODE_IP_FILTER_STATION_IP 0x0001 +#define EFI_PXE_BASE_CODE_IP_FILTER_BROADCAST 0x0002 +#define EFI_PXE_BASE_CODE_IP_FILTER_PROMISCUOUS 0x0004 +#define EFI_PXE_BASE_CODE_IP_FILTER_PROMISCUOUS_MULTICAST 0x0008 + +// +// ARP Cache definitions +// + +typedef struct { + EFI_IP_ADDRESS IpAddr; + EFI_MAC_ADDRESS MacAddr; +} EFI_PXE_BASE_CODE_ARP_ENTRY; + +typedef struct { + EFI_IP_ADDRESS IpAddr; + EFI_IP_ADDRESS SubnetMask; + EFI_IP_ADDRESS GwAddr; +} EFI_PXE_BASE_CODE_ROUTE_ENTRY; + +// +// UDP definitions +// + +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_SRC_IP 0x0001 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_SRC_PORT 0x0002 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_DEST_IP 0x0004 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_DEST_PORT 0x0008 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_USE_FILTER 0x0010 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_MAY_FRAGMENT 0x0020 + +// +// Discover() definitions +// + +#define EFI_PXE_BASE_CODE_BOOT_TYPE_BOOTSTRAP 0 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_MS_WINNT_RIS 1 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_INTEL_LCM 2 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_DOSUNDI 3 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_NEC_ESMPRO 4 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_IBM_WSoD 5 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_IBM_LCCM 6 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_CA_UNICENTER_TNG 7 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_HP_OPENVIEW 8 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_ALTIRIS_9 9 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_ALTIRIS_10 10 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_ALTIRIS_11 11 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_NOT_USED_12 12 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_REDHAT_INSTALL 13 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_REDHAT_BOOT 14 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_REMBO 15 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_BEOBOOT 16 +// +// 17 through 32767 are reserved +// 32768 through 65279 are for vendor use +// 65280 through 65534 are reserved +// +#define EFI_PXE_BASE_CODE_BOOT_TYPE_PXETEST 65535 + +#define EFI_PXE_BASE_CODE_BOOT_LAYER_MASK 0x7FFF +#define EFI_PXE_BASE_CODE_BOOT_LAYER_INITIAL 0x0000 + + +typedef struct { + UINT16 Type; + BOOLEAN AcceptAnyResponse; + UINT8 Reserved; + EFI_IP_ADDRESS IpAddr; +} EFI_PXE_BASE_CODE_SRVLIST; + +typedef struct { + BOOLEAN UseMCast; + BOOLEAN UseBCast; + BOOLEAN UseUCast; + BOOLEAN MustUseList; + EFI_IP_ADDRESS ServerMCastIp; + UINT16 IpCnt; + EFI_PXE_BASE_CODE_SRVLIST SrvList[1]; +} EFI_PXE_BASE_CODE_DISCOVER_INFO; + +// +// Mtftp() definitions +// + +typedef enum { + EFI_PXE_BASE_CODE_TFTP_FIRST, + EFI_PXE_BASE_CODE_TFTP_GET_FILE_SIZE, + EFI_PXE_BASE_CODE_TFTP_READ_FILE, + EFI_PXE_BASE_CODE_TFTP_WRITE_FILE, + EFI_PXE_BASE_CODE_TFTP_READ_DIRECTORY, + EFI_PXE_BASE_CODE_MTFTP_GET_FILE_SIZE, + EFI_PXE_BASE_CODE_MTFTP_READ_FILE, + EFI_PXE_BASE_CODE_MTFTP_READ_DIRECTORY, + EFI_PXE_BASE_CODE_MTFTP_LAST +} EFI_PXE_BASE_CODE_TFTP_OPCODE; + +typedef struct { + EFI_IP_ADDRESS MCastIp; + EFI_PXE_BASE_CODE_UDP_PORT CPort; + EFI_PXE_BASE_CODE_UDP_PORT SPort; + UINT16 ListenTimeout; + UINT16 TransmitTimeout; +} EFI_PXE_BASE_CODE_MTFTP_INFO; + +// +// PXE Base Code Mode structure +// + +#define EFI_PXE_BASE_CODE_MAX_ARP_ENTRIES 8 +#define EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES 8 + +typedef struct { + BOOLEAN Started; + BOOLEAN Ipv6Available; + BOOLEAN Ipv6Supported; + BOOLEAN UsingIpv6; + BOOLEAN BisSupported; + BOOLEAN BisDetected; + BOOLEAN AutoArp; + BOOLEAN SendGUID; + BOOLEAN DhcpDiscoverValid; + BOOLEAN DhcpAckReceived; + BOOLEAN ProxyOfferReceived; + BOOLEAN PxeDiscoverValid; + BOOLEAN PxeReplyReceived; + BOOLEAN PxeBisReplyReceived; + BOOLEAN IcmpErrorReceived; + BOOLEAN TftpErrorReceived; + BOOLEAN MakeCallbacks; + UINT8 TTL; + UINT8 ToS; + EFI_IP_ADDRESS StationIp; + EFI_IP_ADDRESS SubnetMask; + EFI_PXE_BASE_CODE_PACKET DhcpDiscover; + EFI_PXE_BASE_CODE_PACKET DhcpAck; + EFI_PXE_BASE_CODE_PACKET ProxyOffer; + EFI_PXE_BASE_CODE_PACKET PxeDiscover; + EFI_PXE_BASE_CODE_PACKET PxeReply; + EFI_PXE_BASE_CODE_PACKET PxeBisReply; + EFI_PXE_BASE_CODE_IP_FILTER IpFilter; + UINT32 ArpCacheEntries; + EFI_PXE_BASE_CODE_ARP_ENTRY ArpCache[EFI_PXE_BASE_CODE_MAX_ARP_ENTRIES]; + UINT32 RouteTableEntries; + EFI_PXE_BASE_CODE_ROUTE_ENTRY RouteTable[EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES]; + EFI_PXE_BASE_CODE_ICMP_ERROR IcmpError; + EFI_PXE_BASE_CODE_TFTP_ERROR TftpError; +} EFI_PXE_BASE_CODE_MODE; + +// +// PXE Base Code Interface Function definitions +// + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_START) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN BOOLEAN UseIpv6 + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_STOP) ( + IN struct _EFI_PXE_BASE_CODE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_DHCP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN BOOLEAN SortOffers + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_DISCOVER) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN UINT16 Type, + IN UINT16 *Layer, + IN BOOLEAN UseBis, + IN OUT EFI_PXE_BASE_CODE_DISCOVER_INFO *Info OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_MTFTP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_PXE_BASE_CODE_TFTP_OPCODE Operation, + IN OUT VOID *BufferPtr OPTIONAL, + IN BOOLEAN Overwrite, + IN OUT UINT64 *BufferSize, + IN UINTN *BlockSize OPTIONAL, + IN EFI_IP_ADDRESS *ServerIp, + IN UINT8 *Filename, + IN EFI_PXE_BASE_CODE_MTFTP_INFO *Info OPTIONAL, + IN BOOLEAN DontUseBuffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_UDP_WRITE) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN UINT16 OpFlags, + IN EFI_IP_ADDRESS *DestIp, + IN EFI_PXE_BASE_CODE_UDP_PORT *DestPort, + IN EFI_IP_ADDRESS *GatewayIp, OPTIONAL + IN EFI_IP_ADDRESS *SrcIp, OPTIONAL + IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort, OPTIONAL + IN UINTN *HeaderSize, OPTIONAL + IN VOID *HeaderPtr, OPTIONAL + IN UINTN *BufferSize, + IN VOID *BufferPtr + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_UDP_READ) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN UINT16 OpFlags, + IN OUT EFI_IP_ADDRESS *DestIp, OPTIONAL + IN OUT EFI_PXE_BASE_CODE_UDP_PORT *DestPort, OPTIONAL + IN OUT EFI_IP_ADDRESS *SrcIp, OPTIONAL + IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort, OPTIONAL + IN UINTN *HeaderSize, OPTIONAL + IN VOID *HeaderPtr, OPTIONAL + IN OUT UINTN *BufferSize, + IN VOID *BufferPtr + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_IP_FILTER) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_PXE_BASE_CODE_IP_FILTER *NewFilter + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_ARP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_IP_ADDRESS *IpAddr, + IN EFI_MAC_ADDRESS *MacAddr OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_PARAMETERS) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN BOOLEAN *NewAutoArp, OPTIONAL + IN BOOLEAN *NewSendGUID, OPTIONAL + IN UINT8 *NewTTL, OPTIONAL + IN UINT8 *NewToS, OPTIONAL + IN BOOLEAN *NewMakeCallback OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_STATION_IP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_IP_ADDRESS *NewStationIp, OPTIONAL + IN EFI_IP_ADDRESS *NewSubnetMask OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_PACKETS) ( + IN struct _EFI_PXE_BASE_CODE *This, + BOOLEAN *NewDhcpDiscoverValid, OPTIONAL + BOOLEAN *NewDhcpAckReceived, OPTIONAL + BOOLEAN *NewProxyOfferReceived, OPTIONAL + BOOLEAN *NewPxeDiscoverValid, OPTIONAL + BOOLEAN *NewPxeReplyReceived, OPTIONAL + BOOLEAN *NewPxeBisReplyReceived,OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewDhcpDiscover, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewDhcpAck, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewProxyOffer, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewPxeDiscover, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewPxeReply, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewPxeBisReply OPTIONAL + ); + +// +// PXE Base Code Protocol structure +// + +#define EFI_PXE_BASE_CODE_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_PXE_BASE_CODE { + UINT64 Revision; + EFI_PXE_BASE_CODE_START Start; + EFI_PXE_BASE_CODE_STOP Stop; + EFI_PXE_BASE_CODE_DHCP Dhcp; + EFI_PXE_BASE_CODE_DISCOVER Discover; + EFI_PXE_BASE_CODE_MTFTP Mtftp; + EFI_PXE_BASE_CODE_UDP_WRITE UdpWrite; + EFI_PXE_BASE_CODE_UDP_READ UdpRead; + EFI_PXE_BASE_CODE_SET_IP_FILTER SetIpFilter; + EFI_PXE_BASE_CODE_ARP Arp; + EFI_PXE_BASE_CODE_SET_PARAMETERS SetParameters; + EFI_PXE_BASE_CODE_SET_STATION_IP SetStationIp; + EFI_PXE_BASE_CODE_SET_PACKETS SetPackets; + EFI_PXE_BASE_CODE_MODE *Mode; +} EFI_PXE_BASE_CODE; + +// +// Call Back Definitions +// + +#define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL \ + { 0x245dca21, 0xfb7b, 0x11d3, {0x8f, 0x01, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +// +// Revision Number +// + +#define EFI_PXE_BASE_CODE_CALLBACK_INTERFACE_REVISION 0x00010000 + +INTERFACE_DECL(_EFI_PXE_BASE_CODE_CALLBACK); + +typedef enum { + EFI_PXE_BASE_CODE_FUNCTION_FIRST, + EFI_PXE_BASE_CODE_FUNCTION_DHCP, + EFI_PXE_BASE_CODE_FUNCTION_DISCOVER, + EFI_PXE_BASE_CODE_FUNCTION_MTFTP, + EFI_PXE_BASE_CODE_FUNCTION_UDP_WRITE, + EFI_PXE_BASE_CODE_FUNCTION_UDP_READ, + EFI_PXE_BASE_CODE_FUNCTION_ARP, + EFI_PXE_BASE_CODE_FUNCTION_IGMP, + EFI_PXE_BASE_CODE_PXE_FUNCTION_LAST +} EFI_PXE_BASE_CODE_FUNCTION; + +typedef enum { + EFI_PXE_BASE_CODE_CALLBACK_STATUS_FIRST, + EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, + EFI_PXE_BASE_CODE_CALLBACK_STATUS_ABORT, + EFI_PXE_BASE_CODE_CALLBACK_STATUS_LAST +} EFI_PXE_BASE_CODE_CALLBACK_STATUS; + +typedef +EFI_PXE_BASE_CODE_CALLBACK_STATUS +(EFIAPI *EFI_PXE_CALLBACK) ( + IN struct _EFI_PXE_BASE_CODE_CALLBACK *This, + IN EFI_PXE_BASE_CODE_FUNCTION Function, + IN BOOLEAN Received, + IN UINT32 PacketLen, + IN EFI_PXE_BASE_CODE_PACKET *Packet OPTIONAL + ); + +typedef struct _EFI_PXE_BASE_CODE_CALLBACK { + UINT64 Revision; + EFI_PXE_CALLBACK Callback; +} EFI_PXE_BASE_CODE_CALLBACK; + +#endif /* _EFIPXEBC_H */ diff --git a/efi32/include/efi/efirtlib.h b/efi32/include/efi/efirtlib.h new file mode 100644 index 00000000..c073ead9 --- /dev/null +++ b/efi32/include/efi/efirtlib.h @@ -0,0 +1,141 @@ +#ifndef _EFI_RT_LIB_INCLUDE_ +#define _EFI_RT_LIB_INCLUDE_ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efilib.h + +Abstract: + + EFI Runtime library functions + + + +Revision History + +--*/ + +#include "efidebug.h" +#include "efipart.h" +#include "efilibplat.h" + + +VOID +RUNTIMEFUNCTION +RtZeroMem ( + IN VOID *Buffer, + IN UINTN Size + ); + +VOID +RUNTIMEFUNCTION +RtSetMem ( + IN VOID *Buffer, + IN UINTN Size, + IN UINT8 Value + ); + +VOID +RUNTIMEFUNCTION +RtCopyMem ( + IN VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +RUNTIMEFUNCTION +RtCompareMem ( + IN CONST VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +RUNTIMEFUNCTION +RtStrCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2 + ); + + +VOID +RUNTIMEFUNCTION +RtStrCpy ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +VOID +RUNTIMEFUNCTION +RtStrCat ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +UINTN +RUNTIMEFUNCTION +RtStrLen ( + IN CONST CHAR16 *s1 + ); + +UINTN +RUNTIMEFUNCTION +RtStrSize ( + IN CONST CHAR16 *s1 + ); + +INTN +RUNTIMEFUNCTION +RtCompareGuid ( + IN EFI_GUID *Guid1, + IN EFI_GUID *Guid2 + ); + +UINT8 +RUNTIMEFUNCTION +RtDecimaltoBCD( + IN UINT8 BcdValue + ); + +UINT8 +RUNTIMEFUNCTION +RtBCDtoDecimal( + IN UINT8 BcdValue + ); + +// +// Virtual mapping transition support. (Only used during +// the virtual address change transisition) +// + +VOID +RUNTIMEFUNCTION +RtLibEnableVirtualMappings ( + VOID + ); + +VOID +RUNTIMEFUNCTION +RtConvertList ( + IN UINTN DebugDisposition, + IN OUT LIST_ENTRY *ListHead + ); + +VOID +RUNTIMEFUNCTION +RtAcquireLock ( + IN FLOCK *Lock + ); + +VOID +RUNTIMEFUNCTION +RtReleaseLock ( + IN FLOCK *Lock + ); + + +#endif diff --git a/efi32/include/efi/efiser.h b/efi32/include/efi/efiser.h new file mode 100644 index 00000000..fcc97a19 --- /dev/null +++ b/efi32/include/efi/efiser.h @@ -0,0 +1,132 @@ +#ifndef _EFI_SER_H +#define _EFI_SER_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efiser.h + +Abstract: + + EFI serial protocol + +Revision History + +--*/ + +// +// Serial protocol +// + +#define SERIAL_IO_PROTOCOL \ + { 0xBB25CF6F, 0xF1D4, 0x11D2, {0x9A, 0x0C, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0xFD} } + +INTERFACE_DECL(_SERIAL_IO_INTERFACE); + +typedef enum { + DefaultParity, + NoParity, + EvenParity, + OddParity, + MarkParity, + SpaceParity +} EFI_PARITY_TYPE; + +typedef enum { + DefaultStopBits, + OneStopBit, // 1 stop bit + OneFiveStopBits, // 1.5 stop bits + TwoStopBits // 2 stop bits +} EFI_STOP_BITS_TYPE; + +#define EFI_SERIAL_CLEAR_TO_SEND 0x0010 // RO +#define EFI_SERIAL_DATA_SET_READY 0x0020 // RO +#define EFI_SERIAL_RING_INDICATE 0x0040 // RO +#define EFI_SERIAL_CARRIER_DETECT 0x0080 // RO +#define EFI_SERIAL_REQUEST_TO_SEND 0x0002 // WO +#define EFI_SERIAL_DATA_TERMINAL_READY 0x0001 // WO +#define EFI_SERIAL_INPUT_BUFFER_EMPTY 0x0100 // RO +#define EFI_SERIAL_OUTPUT_BUFFER_EMPTY 0x0200 // RO +#define EFI_SERIAL_HARDWARE_LOOPBACK_ENABLE 0x1000 // RW +#define EFI_SERIAL_SOFTWARE_LOOPBACK_ENABLE 0x2000 // RW +#define EFI_SERIAL_HARDWARE_FLOW_CONTROL_ENABLE 0x4000 // RW + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_RESET) ( + IN struct _SERIAL_IO_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_SET_ATTRIBUTES) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN UINT64 BaudRate, + IN UINT32 ReceiveFifoDepth, + IN UINT32 Timeout, + IN EFI_PARITY_TYPE Parity, + IN UINT8 DataBits, + IN EFI_STOP_BITS_TYPE StopBits + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_SET_CONTROL_BITS) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN UINT32 Control + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_GET_CONTROL_BITS) ( + IN struct _SERIAL_IO_INTERFACE *This, + OUT UINT32 *Control + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_WRITE) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_READ) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef struct { + UINT32 ControlMask; + + // current Attributes + UINT32 Timeout; + UINT64 BaudRate; + UINT32 ReceiveFifoDepth; + UINT32 DataBits; + UINT32 Parity; + UINT32 StopBits; +} SERIAL_IO_MODE; + +#define SERIAL_IO_INTERFACE_REVISION 0x00010000 + +typedef struct _SERIAL_IO_INTERFACE { + UINT32 Revision; + EFI_SERIAL_RESET Reset; + EFI_SERIAL_SET_ATTRIBUTES SetAttributes; + EFI_SERIAL_SET_CONTROL_BITS SetControl; + EFI_SERIAL_GET_CONTROL_BITS GetControl; + EFI_SERIAL_WRITE Write; + EFI_SERIAL_READ Read; + + SERIAL_IO_MODE *Mode; +} SERIAL_IO_INTERFACE; + +#endif + diff --git a/efi32/include/efi/efistdarg.h b/efi32/include/efi/efistdarg.h new file mode 100644 index 00000000..8a96b94f --- /dev/null +++ b/efi32/include/efi/efistdarg.h @@ -0,0 +1,33 @@ +#ifndef _EFISTDARG_H_ +#define _EFISTDARG_H_ + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + devpath.h + +Abstract: + + Defines for parsing the EFI Device Path structures + + + +Revision History + +--*/ +#ifdef __GNUC__ +#include "stdarg.h" +#else +#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(UINTN) - 1) & ~(sizeof(UINTN) - 1) ) + +typedef CHAR8 * va_list; + +#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) ) +#define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) ) +#define va_end(ap) ( ap = (va_list)0 ) +#endif + +#endif /* _INC_STDARG */ diff --git a/efi32/include/efi/efitcp.h b/efi32/include/efi/efitcp.h new file mode 100644 index 00000000..6c5df7fd --- /dev/null +++ b/efi32/include/efi/efitcp.h @@ -0,0 +1,391 @@ +#ifndef _EFI_TCP_H +#define _EFI_TCP_H + +/*++ +Copyright (c) 2013 Intel Corporation + +--*/ + +#define EFI_TCP4_SERVICE_BINDING_PROTOCOL \ + { 0x00720665, 0x67eb, 0x4a99, {0xba, 0xf7, 0xd3, 0xc3, 0x3a, 0x1c,0x7c, 0xc9}} + +#define EFI_TCP4_PROTOCOL \ + { 0x65530bc7, 0xa359, 0x410f, {0xb0, 0x10, 0x5a, 0xad, 0xc7, 0xec, 0x2b, 0x62}} + +#define EFI_TCP6_SERVICE_BINDING_PROTOCOL \ + { 0xec20eb79, 0x6c1a, 0x4664, {0x9a, 0xd, 0xd2, 0xe4, 0xcc, 0x16, 0xd6, 0x64}} + +#define EFI_TCP6_PROTOCOL \ + { 0x46e44855, 0xbd60, 0x4ab7, {0xab, 0xd, 0xa6, 0x79, 0xb9, 0x44, 0x7d, 0x77}} + +INTERFACE_DECL(_EFI_TCP4); +INTERFACE_DECL(_EFI_TCP6); + +typedef struct { + BOOLEAN UseDefaultAddress; + EFI_IPv4_ADDRESS StationAddress; + EFI_IPv4_ADDRESS SubnetMask; + UINT16 StationPort; + EFI_IPv4_ADDRESS RemoteAddress; + UINT16 RemotePort; + BOOLEAN ActiveFlag; +} EFI_TCP4_ACCESS_POINT; + +typedef struct { + UINT32 ReceiveBufferSize; + UINT32 SendBufferSize; + UINT32 MaxSynBackLog; + UINT32 ConnectionTimeout; + UINT32 DataRetries; + UINT32 FinTimeout; + UINT32 TimeWaitTimeout; + UINT32 KeepAliveProbes; + UINT32 KeepAliveTime; + UINT32 KeepAliveInterval; + BOOLEAN EnableNagle; + BOOLEAN EnableTimeStamp; + BOOLEAN EnableWindowScaling; + BOOLEAN EnableSelectiveAck; + BOOLEAN EnablePAthMtuDiscovery; +} EFI_TCP4_OPTION; + +typedef struct { + // Receiving Filters + // I/O parameters + UINT8 TypeOfService; + UINT8 TimeToLive; + + // Access Point + EFI_TCP4_ACCESS_POINT AccessPoint; + + // TCP Control Options + EFI_TCP4_OPTION *ControlOption; +} EFI_TCP4_CONFIG_DATA; + +typedef enum { + Tcp4StateClosed = 0, + Tcp4StateListen = 1, + Tcp4StateSynSent = 2, + Tcp4StateSynReceived = 3, + Tcp4StateEstablished = 4, + Tcp4StateFinWait1 = 5, + Tcp4StateFinWait2 = 6, + Tcp4StateClosing = 7, + Tcp4StateTimeWait = 8, + Tcp4StateCloseWait = 9, + Tcp4StateLastAck = 10 +} EFI_TCP4_CONNECTION_STATE; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_GET_MODE_DATA) ( + IN struct _EFI_TCP4 *This, + OUT EFI_TCP4_CONNECTION_STATE *Tcp4State OPTIONAL, + OUT EFI_TCP4_CONFIG_DATA *Tcp4ConfigData OPTIONAL, + OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CONFIGURE) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_CONFIG_DATA *TcpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_ROUTES) ( + IN struct _EFI_TCP4 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv4_ADDRESS *SubnetAddress, + IN EFI_IPv4_ADDRESS *SubnetMask, + IN EFI_IPv4_ADDRESS *GatewayAddress +); + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; +} EFI_TCP4_COMPLETION_TOKEN; + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; +} EFI_TCP4_CONNECTION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CONNECT) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_CONNECTION_TOKEN *ConnectionToken + ); + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; + EFI_HANDLE NewChildHandle; +} EFI_TCP4_LISTEN_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_ACCEPT) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_LISTEN_TOKEN *ListenToken + ); + +#define EFI_CONNECTION_FIN EFIERR(104) +#define EFI_CONNECTION_RESET EFIERR(105) +#define EFI_CONNECTION_REFUSED EFIERR(106) + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_TCP4_FRAGMENT_DATA; + +typedef struct { + BOOLEAN UrgentFlag; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP4_RECEIVE_DATA; + +typedef struct { + BOOLEAN Push; + BOOLEAN Urgent; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP4_TRANSMIT_DATA; + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; + union { + EFI_TCP4_RECEIVE_DATA *RxData; + EFI_TCP4_TRANSMIT_DATA *TxData; + } Packet; +} EFI_TCP4_IO_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_TRANSMIT) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_IO_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_RECEIVE) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_IO_TOKEN *Token + ); + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; + BOOLEAN AbortOnClose; +} EFI_TCP4_CLOSE_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CLOSE)( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_CLOSE_TOKEN *CloseToken + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CANCEL)( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_COMPLETION_TOKEN *Token OPTIONAL +); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_POLL) ( + IN struct _EFI_TCP4 *This + ); + +typedef struct _EFI_TCP4 { + EFI_TCP4_GET_MODE_DATA GetModeData; + EFI_TCP4_CONFIGURE Configure; + EFI_TCP4_ROUTES Routes; + EFI_TCP4_CONNECT Connect; + EFI_TCP4_ACCEPT Accept; + EFI_TCP4_TRANSMIT Transmit; + EFI_TCP4_RECEIVE Receive; + EFI_TCP4_CLOSE Close; + EFI_TCP4_CANCEL Cancel; + EFI_TCP4_POLL Poll; +} EFI_TCP4; + +typedef enum { + Tcp6StateClosed = 0, + Tcp6StateListen = 1, + Tcp6StateSynSent = 2, + Tcp6StateSynReceived = 3, + Tcp6StateEstablished = 4, + Tcp6StateFinWait1 = 5, + Tcp6StateFinWait2 = 6, + Tcp6StateClosing = 7, + Tcp6StateTimeWait = 8, + Tcp6StateCloseWait = 9, + Tcp6StateLastAck = 10 +} EFI_TCP6_CONNECTION_STATE; + +typedef struct { + EFI_IPv6_ADDRESS StationAddress; + UINT16 StationPort; + EFI_IPv6_ADDRESS RemoteAddress; + UINT16 RemotePort; + BOOLEAN ActiveFlag; +} EFI_TCP6_ACCESS_POINT; + +typedef struct { + UINT32 ReceiveBufferSize; + UINT32 SendBufferSize; + UINT32 MaxSynBackLog; + UINT32 ConnectionTimeout; + UINT32 DataRetries; + UINT32 FinTimeout; + UINT32 TimeWaitTimeout; + UINT32 KeepAliveProbes; + UINT32 KeepAliveTime; + UINT32 KeepAliveInterval; + BOOLEAN EnableNagle; + BOOLEAN EnableTimeStamp; + BOOLEAN EnableWindbowScaling; + BOOLEAN EnableSelectiveAck; + BOOLEAN EnablePathMtuDiscovery; +} EFI_TCP6_OPTION; + +typedef struct { + UINT8 TrafficClass; + UINT8 HopLimit; + EFI_TCP6_ACCESS_POINT AccessPoint; + EFI_TCP6_OPTION *ControlOption; +} EFI_TCP6_CONFIG_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_GET_MODE_DATA) ( + IN struct _EFI_TCP6 *This, + OUT EFI_TCP6_CONNECTION_STATE *Tcp6State OPTIONAL, + OUT EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL, + OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CONFIGURE) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL + ); + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; +} EFI_TCP6_COMPLETION_TOKEN; + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; +} EFI_TCP6_CONNECTION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CONNECT) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_CONNECTION_TOKEN *ConnectionToken + ); + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; + EFI_HANDLE NewChildHandle; +} EFI_TCP6_LISTEN_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_ACCEPT) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_LISTEN_TOKEN *ListenToken + ); + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_TCP6_FRAGMENT_DATA; + +typedef struct { + BOOLEAN UrgentFlag; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP6_RECEIVE_DATA; + +typedef struct { + BOOLEAN Push; + BOOLEAN Urgent; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP6_TRANSMIT_DATA; + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; + union { + EFI_TCP6_RECEIVE_DATA *RxData; + EFI_TCP6_TRANSMIT_DATA *TxData; + } Packet; +} EFI_TCP6_IO_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_TRANSMIT) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_IO_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_RECEIVE) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_IO_TOKEN *Token + ); + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; + BOOLEAN AbortOnClose; +} EFI_TCP6_CLOSE_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CLOSE)( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_CLOSE_TOKEN *CloseToken + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CANCEL)( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_POLL) ( + IN struct _EFI_TCP6 *This + ); + +typedef struct _EFI_TCP6 { + EFI_TCP6_GET_MODE_DATA GetModeData; + EFI_TCP6_CONFIGURE Configure; + EFI_TCP6_CONNECT Connect; + EFI_TCP6_ACCEPT Accept; + EFI_TCP6_TRANSMIT Transmit; + EFI_TCP6_RECEIVE Receive; + EFI_TCP6_CLOSE Close; + EFI_TCP6_CANCEL Cancel; + EFI_TCP6_POLL Poll; +} EFI_TCP6; + +#endif /* _EFI_TCP_H */ diff --git a/efi32/include/efi/efiudp.h b/efi32/include/efi/efiudp.h new file mode 100644 index 00000000..7c8b467e --- /dev/null +++ b/efi32/include/efi/efiudp.h @@ -0,0 +1,272 @@ +#ifndef _EFI_UDP_H +#define _EFI_UDP_H + + +/*++ +Copyright (c) 2013 Intel Corporation + +--*/ + +#define EFI_UDP4_SERVICE_BINDING_PROTOCOL \ + { 0x83f01464, 0x99bd, 0x45e5, {0xb3, 0x83, 0xaf, 0x63, 0x05, 0xd8, 0xe9, 0xe6} } + +#define EFI_UDP4_PROTOCOL \ + { 0x3ad9df29, 0x4501, 0x478d, {0xb1, 0xf8, 0x7f, 0x7f, 0xe7, 0x0e, 0x50, 0xf3} } + +#define EFI_UDP6_SERVICE_BINDING_PROTOCOL \ + { 0x66ed4721, 0x3c98, 0x4d3e, {0x81, 0xe3, 0xd0, 0x3d, 0xd3, 0x9a, 0x72, 0x54} } + +#define EFI_UDP6_PROTOCOL \ + { 0x4f948815, 0xb4b9, 0x43cb, {0x8a, 0x33, 0x90, 0xe0, 0x60, 0xb3,0x49, 0x55} } + +INTERFACE_DECL(_EFI_UDP4); +INTERFACE_DECL(_EFI_UDP6); + +typedef struct { + BOOLEAN AcceptBroadcast; + BOOLEAN AcceptPromiscuous; + BOOLEAN AcceptAnyPort; + BOOLEAN AllowDuplicatePort; + UINT8 TypeOfService; + UINT8 TimeToLive; + BOOLEAN DoNotFragment; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; + BOOLEAN UseDefaultAddress; + EFI_IPv4_ADDRESS StationAddress; + EFI_IPv4_ADDRESS SubnetMask; + UINT16 StationPort; + EFI_IPv4_ADDRESS RemoteAddress; + UINT16 RemotePort; +} EFI_UDP4_CONFIG_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_GET_MODE_DATA) ( + IN struct _EFI_UDP4 *This, + OUT EFI_UDP4_CONFIG_DATA *Udp4ConfigData OPTIONAL, + OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_CONFIGURE) ( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_CONFIG_DATA *UdpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_GROUPS) ( + IN struct _EFI_UDP4 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv4_ADDRESS *MulticastAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_ROUTES) ( + IN struct _EFI_UDP4 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv4_ADDRESS *SubnetAddress, + IN EFI_IPv4_ADDRESS *SubnetMask, + IN EFI_IPv4_ADDRESS *GatewayAddress + ); + +#define EFI_NETWORK_UNREACHABLE EFIERR(100) +#define EFI_HOST_UNREACHABLE EFIERR(101) +#define EFI_PROTOCOL_UNREACHABLE EFIERR(102) +#define EFI_PORT_UNREACHABLE EFIERR(103) + +typedef struct { + EFI_IPv4_ADDRESS SourceAddress; + UINT16 SourcePort; + EFI_IPv4_ADDRESS DestinationAddress; + UINT16 DestinationPort; +} EFI_UDP4_SESSION_DATA; + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_UDP4_FRAGMENT_DATA; + +typedef struct { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + EFI_UDP4_SESSION_DATA UdpSession; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP4_RECEIVE_DATA; + +typedef struct { + EFI_UDP4_SESSION_DATA *UdpSessionData; + EFI_IPv4_ADDRESS *GatewayAddress; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP4_TRANSMIT_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_UDP4_RECEIVE_DATA *RxData; + EFI_UDP4_TRANSMIT_DATA *TxData; + } Packet; +} EFI_UDP4_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_TRANSMIT) ( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_RECEIVE) ( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_CANCEL)( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_POLL) ( + IN struct _EFI_UDP4 *This + ); + +typedef struct _EFI_UDP4 { + EFI_UDP4_GET_MODE_DATA GetModeData; + EFI_UDP4_CONFIGURE Configure; + EFI_UDP4_GROUPS Groups; + EFI_UDP4_ROUTES Routes; + EFI_UDP4_TRANSMIT Transmit; + EFI_UDP4_RECEIVE Receive; + EFI_UDP4_CANCEL Cancel; + EFI_UDP4_POLL Poll; +} EFI_UDP4; + +typedef struct { + BOOLEAN AcceptPromiscuous; + BOOLEAN AcceptAnyPort; + BOOLEAN AllowDuplicatePort; + UINT8 TrafficClass; + UINT8 HopLimit; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; + EFI_IPv6_ADDRESS StationAddress; + UINT16 StationPort; + EFI_IPv6_ADDRESS RemoteAddress; + UINT16 RemotePort; +} EFI_UDP6_CONFIG_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_GET_MODE_DATA) ( + IN struct _EFI_UDP6 *This, + OUT EFI_UDP6_CONFIG_DATA *Udp6ConfigData OPTIONAL, + OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_CONFIGURE) ( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_CONFIG_DATA *UdpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_GROUPS) ( + IN struct _EFI_UDP6 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv6_ADDRESS *MulticastAddress OPTIONAL + ); + +typedef struct { + EFI_IPv6_ADDRESS SourceAddress; + UINT16 SourcePort; + EFI_IPv6_ADDRESS DestinationAddress; + UINT16 DestinationPort; +} EFI_UDP6_SESSION_DATA; + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_UDP6_FRAGMENT_DATA; + +typedef struct { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + EFI_UDP6_SESSION_DATA UdpSession; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP6_RECEIVE_DATA; + +typedef struct { + EFI_UDP6_SESSION_DATA *UdpSessionData; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP6_TRANSMIT_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_UDP6_RECEIVE_DATA *RxData; + EFI_UDP6_TRANSMIT_DATA *TxData; + } Packet; +} EFI_UDP6_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_TRANSMIT) ( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_RECEIVE) ( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_CANCEL)( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_POLL) ( + IN struct _EFI_UDP6 *This + ); + +typedef struct _EFI_UDP6 { + EFI_UDP6_GET_MODE_DATA GetModeData; + EFI_UDP6_CONFIGURE Configure; + EFI_UDP6_GROUPS Groups; + EFI_UDP6_TRANSMIT Transmit; + EFI_UDP6_RECEIVE Receive; + EFI_UDP6_CANCEL Cancel; + EFI_UDP6_POLL Poll; +} EFI_UDP6; + +#endif /* _EFI_UDP_H */ diff --git a/efi32/include/efi/efiui.h b/efi32/include/efi/efiui.h new file mode 100644 index 00000000..73419437 --- /dev/null +++ b/efi32/include/efi/efiui.h @@ -0,0 +1,54 @@ +#ifndef _EFI_UI_H +#define _EFI_UI_H + +/*++ + +Copyright (c) 200 Intel Corporation + +Module Name: + + EfiUi.h + +Abstract: + Protocol used to build User Interface (UI) stuff. + + This protocol is just data. It is a multi dimentional array. + For each string there is an array of UI_STRING_ENTRY. Each string + is for a different language translation of the same string. The list + is terminated by a NULL UiString. There can be any number of + UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array + entry contains all zeros. + + Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY. + The String, it's NULL terminator, and the NULL terminator for the entire + thing. + + +Revision History + +--*/ + +#define EFI_UI_PROTOCOL \ + { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + + +typedef enum { + UiDeviceString, + UiVendorString, + UiMaxString +} UI_STRING_TYPE; + +typedef struct { + ISO_639_2 *LangCode; + CHAR16 *UiString; +} UI_STRING_ENTRY; + +#define EFI_UI_VERSION 0x00010000 + +typedef struct _UI_INTERFACE { + UINT32 Version; + UI_STRING_ENTRY *Entry; +} UI_INTERFACE; + + +#endif diff --git a/efi32/include/efi/ia32/efibind.h b/efi32/include/efi/ia32/efibind.h new file mode 100644 index 00000000..deb9d16f --- /dev/null +++ b/efi32/include/efi/ia32/efibind.h @@ -0,0 +1,284 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efefind.h + +Abstract: + + EFI to compile bindings + + + + +Revision History + +--*/ + +#ifndef __GNUC__ +#pragma pack() +#endif + +// +// Basic int types of various widths +// + +#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ) + + // No ANSI C 1999/2000 stdint.h integer width declarations + + #if defined(_MSC_EXTENSIONS) + + // Use Microsoft C compiler integer width declarations + + typedef unsigned __int64 uint64_t; + typedef __int64 int64_t; + typedef unsigned __int32 uint32_t; + typedef __int32 int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef char int8_t; + #elif defined(__GNUC__) + typedef int __attribute__((__mode__(__DI__))) int64_t; + typedef unsigned int __attribute__((__mode__(__DI__))) uint64_t; + typedef unsigned int uint32_t; + typedef int int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef signed char int8_t; + #elif defined(UNIX_LP64) + + /* Use LP64 programming model from C_FLAGS for integer width declarations */ + + typedef unsigned long uint64_t; + typedef long int64_t; + typedef unsigned int uint32_t; + typedef int int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef char int8_t; + #else + + /* Assume P64 programming model from C_FLAGS for integer width declarations */ + + typedef unsigned long long uint64_t __attribute__((aligned (8))); + typedef long long int64_t __attribute__((aligned (8))); + typedef unsigned int uint32_t; + typedef int int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef char int8_t; + #endif +#elif defined(__GNUC__) + #include +#endif + +// +// Basic EFI types of various widths +// + +#ifndef __WCHAR_TYPE__ +# define __WCHAR_TYPE__ short +#endif + +typedef uint64_t UINT64; +typedef int64_t INT64; + +#ifndef _BASETSD_H_ + typedef uint32_t UINT32; + typedef int32_t INT32; +#endif + +typedef uint16_t UINT16; +typedef int16_t INT16; +typedef uint8_t UINT8; +typedef int8_t INT8; +typedef __WCHAR_TYPE__ WCHAR; + +#undef VOID +#define VOID void + + +typedef int32_t INTN; +typedef uint32_t UINTN; + +#ifdef EFI_NT_EMULATOR + #define POST_CODE(_Data) +#else + #ifdef EFI_DEBUG +#define POST_CODE(_Data) __asm mov eax,(_Data) __asm out 0x80,al + #else + #define POST_CODE(_Data) + #endif +#endif + +#define EFIERR(a) (0x80000000 | a) +#define EFI_ERROR_MASK 0x80000000 +#define EFIERR_OEM(a) (0xc0000000 | a) + + +#define BAD_POINTER 0xFBFBFBFB +#define MAX_ADDRESS 0xFFFFFFFF + +#ifdef EFI_NT_EMULATOR + #define BREAKPOINT() __asm { int 3 } +#else + #define BREAKPOINT() while (TRUE); // Make it hang on Bios[Dbg]32 +#endif + +// +// Pointers must be aligned to these address to function +// + +#define MIN_ALIGNMENT_SIZE 4 + +#define ALIGN_VARIABLE(Value ,Adjustment) \ + (UINTN)Adjustment = 0; \ + if((UINTN)Value % MIN_ALIGNMENT_SIZE) \ + (UINTN)Adjustment = MIN_ALIGNMENT_SIZE - ((UINTN)Value % MIN_ALIGNMENT_SIZE); \ + Value = (UINTN)Value + (UINTN)Adjustment + + +// +// Define macros to build data structure signatures from characters. +// + +#define EFI_SIGNATURE_16(A,B) ((A) | (B<<8)) +#define EFI_SIGNATURE_32(A,B,C,D) (EFI_SIGNATURE_16(A,B) | (EFI_SIGNATURE_16(C,D) << 16)) +#define EFI_SIGNATURE_64(A,B,C,D,E,F,G,H) (EFI_SIGNATURE_32(A,B,C,D) | ((UINT64)(EFI_SIGNATURE_32(E,F,G,H)) << 32)) +// +// To export & import functions in the EFI emulator environment +// + +#ifdef EFI_NT_EMULATOR + #define EXPORTAPI __declspec( dllexport ) +#else + #define EXPORTAPI +#endif + + +// +// EFIAPI - prototype calling convention for EFI function pointers +// BOOTSERVICE - prototype for implementation of a boot service interface +// RUNTIMESERVICE - prototype for implementation of a runtime service interface +// RUNTIMEFUNCTION - prototype for implementation of a runtime function that is not a service +// RUNTIME_CODE - pragma macro for declaring runtime code +// + +#ifndef EFIAPI // Forces EFI calling conventions reguardless of compiler options + #ifdef _MSC_EXTENSIONS + #define EFIAPI __cdecl // Force C calling convention for Microsoft C compiler + #else + #define EFIAPI // Substitute expresion to force C calling convention + #endif +#endif + +#define BOOTSERVICE +//#define RUNTIMESERVICE(proto,a) alloc_text("rtcode",a); proto a +//#define RUNTIMEFUNCTION(proto,a) alloc_text("rtcode",a); proto a +#define RUNTIMESERVICE +#define RUNTIMEFUNCTION + + +#define RUNTIME_CODE(a) alloc_text("rtcode", a) +#define BEGIN_RUNTIME_DATA() data_seg("rtdata") +#define END_RUNTIME_DATA() data_seg("") + +#define VOLATILE volatile + +#define MEMORY_FENCE() + +#ifdef EFI_NT_EMULATOR + +// +// To help ensure proper coding of integrated drivers, they are +// compiled as DLLs. In NT they require a dll init entry pointer. +// The macro puts a stub entry point into the DLL so it will load. +// + +#define EFI_DRIVER_ENTRY_POINT(InitFunction) \ + UINTN \ + __stdcall \ + _DllMainCRTStartup ( \ + UINTN Inst, \ + UINTN reason_for_call, \ + VOID *rserved \ + ) \ + { \ + return 1; \ + } \ + \ + int \ + EXPORTAPI \ + __cdecl \ + InitializeDriver ( \ + void *ImageHandle, \ + void *SystemTable \ + ) \ + { \ + return InitFunction(ImageHandle, SystemTable); \ + } + + + #define LOAD_INTERNAL_DRIVER(_if, type, name, entry) \ + (_if)->LoadInternal(type, name, NULL) + +#else // EFI_NT_EMULATOR + +// +// When build similiar to FW, then link everything together as +// one big module. +// + + #define EFI_DRIVER_ENTRY_POINT(InitFunction) \ + UINTN \ + InitializeDriver ( \ + VOID *ImageHandle, \ + VOID *SystemTable \ + ) \ + { \ + return InitFunction(ImageHandle, \ + SystemTable); \ + } \ + \ + EFI_STATUS efi_main( \ + EFI_HANDLE image, \ + EFI_SYSTEM_TABLE *systab \ + ) __attribute__((weak, \ + alias ("InitializeDriver"))); + + #define LOAD_INTERNAL_DRIVER(_if, type, name, entry) \ + (_if)->LoadInternal(type, name, entry) + +#endif // EFI_FW_NT + +// +// Some compilers don't support the forward reference construct: +// typedef struct XXXXX +// +// The following macro provide a workaround for such cases. +// +#ifdef NO_INTERFACE_DECL +#define INTERFACE_DECL(x) +#else +#ifdef __GNUC__ +#define INTERFACE_DECL(x) struct x +#else +#define INTERFACE_DECL(x) typedef struct x +#endif +#endif + +/* No efi call wrapper for IA32 architecture */ +#define uefi_call_wrapper(func, va_num, ...) func(__VA_ARGS__) +#define EFI_FUNCTION + +#ifdef _MSC_EXTENSIONS +#pragma warning ( disable : 4731 ) // Suppress warnings about modification of EBP +#endif + diff --git a/efi32/include/efi/ia32/efilibplat.h b/efi32/include/efi/ia32/efilibplat.h new file mode 100644 index 00000000..3844578d --- /dev/null +++ b/efi32/include/efi/ia32/efilibplat.h @@ -0,0 +1,26 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efilibplat.h + +Abstract: + + EFI to compile bindings + + + + +Revision History + +--*/ + +VOID +InitializeLibPlatform ( + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable + ); + + diff --git a/efi32/include/efi/ia32/pe.h b/efi32/include/efi/ia32/pe.h new file mode 100644 index 00000000..979b9360 --- /dev/null +++ b/efi32/include/efi/ia32/pe.h @@ -0,0 +1,595 @@ +/* + PE32+ header file + */ +#ifndef _PE_H +#define _PE_H + +#define IMAGE_DOS_SIGNATURE 0x5A4D // MZ +#define IMAGE_OS2_SIGNATURE 0x454E // NE +#define IMAGE_OS2_SIGNATURE_LE 0x454C // LE +#define IMAGE_NT_SIGNATURE 0x00004550 // PE00 +#define IMAGE_EDOS_SIGNATURE 0x44454550 // PEED + + +typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header + UINT16 e_magic; // Magic number + UINT16 e_cblp; // Bytes on last page of file + UINT16 e_cp; // Pages in file + UINT16 e_crlc; // Relocations + UINT16 e_cparhdr; // Size of header in paragraphs + UINT16 e_minalloc; // Minimum extra paragraphs needed + UINT16 e_maxalloc; // Maximum extra paragraphs needed + UINT16 e_ss; // Initial (relative) SS value + UINT16 e_sp; // Initial SP value + UINT16 e_csum; // Checksum + UINT16 e_ip; // Initial IP value + UINT16 e_cs; // Initial (relative) CS value + UINT16 e_lfarlc; // File address of relocation table + UINT16 e_ovno; // Overlay number + UINT16 e_res[4]; // Reserved words + UINT16 e_oemid; // OEM identifier (for e_oeminfo) + UINT16 e_oeminfo; // OEM information; e_oemid specific + UINT16 e_res2[10]; // Reserved words + UINT32 e_lfanew; // File address of new exe header + } IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER; + +typedef struct _IMAGE_OS2_HEADER { // OS/2 .EXE header + UINT16 ne_magic; // Magic number + UINT8 ne_ver; // Version number + UINT8 ne_rev; // Revision number + UINT16 ne_enttab; // Offset of Entry Table + UINT16 ne_cbenttab; // Number of bytes in Entry Table + UINT32 ne_crc; // Checksum of whole file + UINT16 ne_flags; // Flag UINT16 + UINT16 ne_autodata; // Automatic data segment number + UINT16 ne_heap; // Initial heap allocation + UINT16 ne_stack; // Initial stack allocation + UINT32 ne_csip; // Initial CS:IP setting + UINT32 ne_sssp; // Initial SS:SP setting + UINT16 ne_cseg; // Count of file segments + UINT16 ne_cmod; // Entries in Module Reference Table + UINT16 ne_cbnrestab; // Size of non-resident name table + UINT16 ne_segtab; // Offset of Segment Table + UINT16 ne_rsrctab; // Offset of Resource Table + UINT16 ne_restab; // Offset of resident name table + UINT16 ne_modtab; // Offset of Module Reference Table + UINT16 ne_imptab; // Offset of Imported Names Table + UINT32 ne_nrestab; // Offset of Non-resident Names Table + UINT16 ne_cmovent; // Count of movable entries + UINT16 ne_align; // Segment alignment shift count + UINT16 ne_cres; // Count of resource segments + UINT8 ne_exetyp; // Target Operating system + UINT8 ne_flagsothers; // Other .EXE flags + UINT16 ne_pretthunks; // offset to return thunks + UINT16 ne_psegrefbytes; // offset to segment ref. bytes + UINT16 ne_swaparea; // Minimum code swap area size + UINT16 ne_expver; // Expected Windows version number + } IMAGE_OS2_HEADER, *PIMAGE_OS2_HEADER; + +// +// File header format. +// + +typedef struct _IMAGE_FILE_HEADER { + UINT16 Machine; + UINT16 NumberOfSections; + UINT32 TimeDateStamp; + UINT32 PointerToSymbolTable; + UINT32 NumberOfSymbols; + UINT16 SizeOfOptionalHeader; + UINT16 Characteristics; +} IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER; + +#define IMAGE_SIZEOF_FILE_HEADER 20 + +#define IMAGE_FILE_RELOCS_STRIPPED 0x0001 // Relocation info stripped from file. +#define IMAGE_FILE_EXECUTABLE_IMAGE 0x0002 // File is executable (i.e. no unresolved externel references). +#define IMAGE_FILE_LINE_NUMS_STRIPPED 0x0004 // Line nunbers stripped from file. +#define IMAGE_FILE_LOCAL_SYMS_STRIPPED 0x0008 // Local symbols stripped from file. +#define IMAGE_FILE_BYTES_REVERSED_LO 0x0080 // Bytes of machine word are reversed. +#define IMAGE_FILE_32BIT_MACHINE 0x0100 // 32 bit word machine. +#define IMAGE_FILE_DEBUG_STRIPPED 0x0200 // Debugging info stripped from file in .DBG file +#define IMAGE_FILE_SYSTEM 0x1000 // System File. +#define IMAGE_FILE_DLL 0x2000 // File is a DLL. +#define IMAGE_FILE_BYTES_REVERSED_HI 0x8000 // Bytes of machine word are reversed. + +#define IMAGE_FILE_MACHINE_UNKNOWN 0 +#define IMAGE_FILE_MACHINE_I386 0x14c // Intel 386. +#define IMAGE_FILE_MACHINE_R3000 0x162 // MIPS little-endian, 0540 big-endian +#define IMAGE_FILE_MACHINE_R4000 0x166 // MIPS little-endian +#define IMAGE_FILE_MACHINE_ALPHA 0x184 // Alpha_AXP +#define IMAGE_FILE_MACHINE_ARMTHUMB_MIXED 0x1c2 // Arm/Thumb +#define IMAGE_FILE_MACHINE_POWERPC 0x1F0 // IBM PowerPC Little-Endian +#define IMAGE_FILE_MACHINE_IA64 0x200 // IA-64 +#define IMAGE_FILE_MACHINE_TAHOE 0x7cc // Intel EM machine +#define IMAGE_FILE_MACHINE_EBC 0xebc // EFI Byte Code +#define IMAGE_FILE_MACHINE_X64 0x8664 // x86_64 +// +// Directory format. +// + +typedef struct _IMAGE_DATA_DIRECTORY { + UINT32 VirtualAddress; + UINT32 Size; +} IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY; + +#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16 + +// +// Optional header format. +// + +typedef struct _IMAGE_OPTIONAL_HEADER { + // + // Standard fields. + // + + UINT16 Magic; + UINT8 MajorLinkerVersion; + UINT8 MinorLinkerVersion; + UINT32 SizeOfCode; + UINT32 SizeOfInitializedData; + UINT32 SizeOfUninitializedData; + UINT32 AddressOfEntryPoint; + UINT32 BaseOfCode; + UINT32 BaseOfData; + + // + // NT additional fields. + // + + UINT32 ImageBase; + UINT32 SectionAlignment; + UINT32 FileAlignment; + UINT16 MajorOperatingSystemVersion; + UINT16 MinorOperatingSystemVersion; + UINT16 MajorImageVersion; + UINT16 MinorImageVersion; + UINT16 MajorSubsystemVersion; + UINT16 MinorSubsystemVersion; + UINT32 Reserved1; + UINT32 SizeOfImage; + UINT32 SizeOfHeaders; + UINT32 CheckSum; + UINT16 Subsystem; + UINT16 DllCharacteristics; + UINT32 SizeOfStackReserve; + UINT32 SizeOfStackCommit; + UINT32 SizeOfHeapReserve; + UINT32 SizeOfHeapCommit; + UINT32 LoaderFlags; + UINT32 NumberOfRvaAndSizes; + IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; +} IMAGE_OPTIONAL_HEADER, *PIMAGE_OPTIONAL_HEADER; + +typedef struct _IMAGE_ROM_OPTIONAL_HEADER { + UINT16 Magic; + UINT8 MajorLinkerVersion; + UINT8 MinorLinkerVersion; + UINT32 SizeOfCode; + UINT32 SizeOfInitializedData; + UINT32 SizeOfUninitializedData; + UINT32 AddressOfEntryPoint; + UINT32 BaseOfCode; + UINT32 BaseOfData; + UINT32 BaseOfBss; + UINT32 GprMask; + UINT32 CprMask[4]; + UINT32 GpValue; +} IMAGE_ROM_OPTIONAL_HEADER, *PIMAGE_ROM_OPTIONAL_HEADER; + +#define IMAGE_SIZEOF_ROM_OPTIONAL_HEADER 56 +#define IMAGE_SIZEOF_STD_OPTIONAL_HEADER 28 +#define IMAGE_SIZEOF_NT_OPTIONAL_HEADER 224 + +#define IMAGE_NT_OPTIONAL_HDR_MAGIC 0x10b +#define IMAGE_ROM_OPTIONAL_HDR_MAGIC 0x107 + +typedef struct _IMAGE_NT_HEADERS { + UINT32 Signature; + IMAGE_FILE_HEADER FileHeader; + IMAGE_OPTIONAL_HEADER OptionalHeader; +} IMAGE_NT_HEADERS, *PIMAGE_NT_HEADERS; + +typedef struct _IMAGE_ROM_HEADERS { + IMAGE_FILE_HEADER FileHeader; + IMAGE_ROM_OPTIONAL_HEADER OptionalHeader; +} IMAGE_ROM_HEADERS, *PIMAGE_ROM_HEADERS; + +#define IMAGE_FIRST_SECTION( ntheader ) ((PIMAGE_SECTION_HEADER) \ + ((UINT32)ntheader + \ + FIELD_OFFSET( IMAGE_NT_HEADERS, OptionalHeader ) + \ + ((PIMAGE_NT_HEADERS)(ntheader))->FileHeader.SizeOfOptionalHeader \ + )) + + +// Subsystem Values + +#define IMAGE_SUBSYSTEM_UNKNOWN 0 // Unknown subsystem. +#define IMAGE_SUBSYSTEM_NATIVE 1 // Image doesn't require a subsystem. +#define IMAGE_SUBSYSTEM_WINDOWS_GUI 2 // Image runs in the Windows GUI subsystem. +#define IMAGE_SUBSYSTEM_WINDOWS_CUI 3 // Image runs in the Windows character subsystem. +#define IMAGE_SUBSYSTEM_OS2_CUI 5 // image runs in the OS/2 character subsystem. +#define IMAGE_SUBSYSTEM_POSIX_CUI 7 // image run in the Posix character subsystem. + + +// Directory Entries + +#define IMAGE_DIRECTORY_ENTRY_EXPORT 0 // Export Directory +#define IMAGE_DIRECTORY_ENTRY_IMPORT 1 // Import Directory +#define IMAGE_DIRECTORY_ENTRY_RESOURCE 2 // Resource Directory +#define IMAGE_DIRECTORY_ENTRY_EXCEPTION 3 // Exception Directory +#define IMAGE_DIRECTORY_ENTRY_SECURITY 4 // Security Directory +#define IMAGE_DIRECTORY_ENTRY_BASERELOC 5 // Base Relocation Table +#define IMAGE_DIRECTORY_ENTRY_DEBUG 6 // Debug Directory +#define IMAGE_DIRECTORY_ENTRY_COPYRIGHT 7 // Description String +#define IMAGE_DIRECTORY_ENTRY_GLOBALPTR 8 // Machine Value (MIPS GP) +#define IMAGE_DIRECTORY_ENTRY_TLS 9 // TLS Directory +#define IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG 10 // Load Configuration Directory + +// +// Section header format. +// + +#define IMAGE_SIZEOF_SHORT_NAME 8 + +typedef struct _IMAGE_SECTION_HEADER { + UINT8 Name[IMAGE_SIZEOF_SHORT_NAME]; + union { + UINT32 PhysicalAddress; + UINT32 VirtualSize; + } Misc; + UINT32 VirtualAddress; + UINT32 SizeOfRawData; + UINT32 PointerToRawData; + UINT32 PointerToRelocations; + UINT32 PointerToLinenumbers; + UINT16 NumberOfRelocations; + UINT16 NumberOfLinenumbers; + UINT32 Characteristics; +} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER; + +#define IMAGE_SIZEOF_SECTION_HEADER 40 + +#define IMAGE_SCN_TYPE_NO_PAD 0x00000008 // Reserved. + +#define IMAGE_SCN_CNT_CODE 0x00000020 // Section contains code. +#define IMAGE_SCN_CNT_INITIALIZED_DATA 0x00000040 // Section contains initialized data. +#define IMAGE_SCN_CNT_UNINITIALIZED_DATA 0x00000080 // Section contains uninitialized data. + +#define IMAGE_SCN_LNK_OTHER 0x00000100 // Reserved. +#define IMAGE_SCN_LNK_INFO 0x00000200 // Section contains comments or some other type of information. +#define IMAGE_SCN_LNK_REMOVE 0x00000800 // Section contents will not become part of image. +#define IMAGE_SCN_LNK_COMDAT 0x00001000 // Section contents comdat. + +#define IMAGE_SCN_ALIGN_1BYTES 0x00100000 // +#define IMAGE_SCN_ALIGN_2BYTES 0x00200000 // +#define IMAGE_SCN_ALIGN_4BYTES 0x00300000 // +#define IMAGE_SCN_ALIGN_8BYTES 0x00400000 // +#define IMAGE_SCN_ALIGN_16BYTES 0x00500000 // Default alignment if no others are specified. +#define IMAGE_SCN_ALIGN_32BYTES 0x00600000 // +#define IMAGE_SCN_ALIGN_64BYTES 0x00700000 // + +#define IMAGE_SCN_MEM_DISCARDABLE 0x02000000 // Section can be discarded. +#define IMAGE_SCN_MEM_NOT_CACHED 0x04000000 // Section is not cachable. +#define IMAGE_SCN_MEM_NOT_PAGED 0x08000000 // Section is not pageable. +#define IMAGE_SCN_MEM_SHARED 0x10000000 // Section is shareable. +#define IMAGE_SCN_MEM_EXECUTE 0x20000000 // Section is executable. +#define IMAGE_SCN_MEM_READ 0x40000000 // Section is readable. +#define IMAGE_SCN_MEM_WRITE 0x80000000 // Section is writeable. + +// +// Symbol format. +// + + +#define IMAGE_SIZEOF_SYMBOL 18 + +// +// Section values. +// +// Symbols have a section number of the section in which they are +// defined. Otherwise, section numbers have the following meanings: +// + +#define IMAGE_SYM_UNDEFINED (UINT16)0 // Symbol is undefined or is common. +#define IMAGE_SYM_ABSOLUTE (UINT16)-1 // Symbol is an absolute value. +#define IMAGE_SYM_DEBUG (UINT16)-2 // Symbol is a special debug item. + +// +// Type (fundamental) values. +// + +#define IMAGE_SYM_TYPE_NULL 0 // no type. +#define IMAGE_SYM_TYPE_VOID 1 // +#define IMAGE_SYM_TYPE_CHAR 2 // type character. +#define IMAGE_SYM_TYPE_SHORT 3 // type short integer. +#define IMAGE_SYM_TYPE_INT 4 // +#define IMAGE_SYM_TYPE_LONG 5 // +#define IMAGE_SYM_TYPE_FLOAT 6 // +#define IMAGE_SYM_TYPE_DOUBLE 7 // +#define IMAGE_SYM_TYPE_STRUCT 8 // +#define IMAGE_SYM_TYPE_UNION 9 // +#define IMAGE_SYM_TYPE_ENUM 10 // enumeration. +#define IMAGE_SYM_TYPE_MOE 11 // member of enumeration. +#define IMAGE_SYM_TYPE_BYTE 12 // +#define IMAGE_SYM_TYPE_WORD 13 // +#define IMAGE_SYM_TYPE_UINT 14 // +#define IMAGE_SYM_TYPE_DWORD 15 // + +// +// Type (derived) values. +// + +#define IMAGE_SYM_DTYPE_NULL 0 // no derived type. +#define IMAGE_SYM_DTYPE_POINTER 1 // pointer. +#define IMAGE_SYM_DTYPE_FUNCTION 2 // function. +#define IMAGE_SYM_DTYPE_ARRAY 3 // array. + +// +// Storage classes. +// + +#define IMAGE_SYM_CLASS_END_OF_FUNCTION (BYTE )-1 +#define IMAGE_SYM_CLASS_NULL 0 +#define IMAGE_SYM_CLASS_AUTOMATIC 1 +#define IMAGE_SYM_CLASS_EXTERNAL 2 +#define IMAGE_SYM_CLASS_STATIC 3 +#define IMAGE_SYM_CLASS_REGISTER 4 +#define IMAGE_SYM_CLASS_EXTERNAL_DEF 5 +#define IMAGE_SYM_CLASS_LABEL 6 +#define IMAGE_SYM_CLASS_UNDEFINED_LABEL 7 +#define IMAGE_SYM_CLASS_MEMBER_OF_STRUCT 8 +#define IMAGE_SYM_CLASS_ARGUMENT 9 +#define IMAGE_SYM_CLASS_STRUCT_TAG 10 +#define IMAGE_SYM_CLASS_MEMBER_OF_UNION 11 +#define IMAGE_SYM_CLASS_UNION_TAG 12 +#define IMAGE_SYM_CLASS_TYPE_DEFINITION 13 +#define IMAGE_SYM_CLASS_UNDEFINED_STATIC 14 +#define IMAGE_SYM_CLASS_ENUM_TAG 15 +#define IMAGE_SYM_CLASS_MEMBER_OF_ENUM 16 +#define IMAGE_SYM_CLASS_REGISTER_PARAM 17 +#define IMAGE_SYM_CLASS_BIT_FIELD 18 +#define IMAGE_SYM_CLASS_BLOCK 100 +#define IMAGE_SYM_CLASS_FUNCTION 101 +#define IMAGE_SYM_CLASS_END_OF_STRUCT 102 +#define IMAGE_SYM_CLASS_FILE 103 +// new +#define IMAGE_SYM_CLASS_SECTION 104 +#define IMAGE_SYM_CLASS_WEAK_EXTERNAL 105 + +// type packing constants + +#define N_BTMASK 017 +#define N_TMASK 060 +#define N_TMASK1 0300 +#define N_TMASK2 0360 +#define N_BTSHFT 4 +#define N_TSHIFT 2 + +// MACROS + +// +// Communal selection types. +// + +#define IMAGE_COMDAT_SELECT_NODUPLICATES 1 +#define IMAGE_COMDAT_SELECT_ANY 2 +#define IMAGE_COMDAT_SELECT_SAME_SIZE 3 +#define IMAGE_COMDAT_SELECT_EXACT_MATCH 4 +#define IMAGE_COMDAT_SELECT_ASSOCIATIVE 5 + +#define IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY 1 +#define IMAGE_WEAK_EXTERN_SEARCH_LIBRARY 2 +#define IMAGE_WEAK_EXTERN_SEARCH_ALIAS 3 + + +// +// Relocation format. +// + +typedef struct _IMAGE_RELOCATION { + UINT32 VirtualAddress; + UINT32 SymbolTableIndex; + UINT16 Type; +} IMAGE_RELOCATION; + +#define IMAGE_SIZEOF_RELOCATION 10 + +// +// I386 relocation types. +// + +#define IMAGE_REL_I386_ABSOLUTE 0 // Reference is absolute, no relocation is necessary +#define IMAGE_REL_I386_DIR16 01 // Direct 16-bit reference to the symbols virtual address +#define IMAGE_REL_I386_REL16 02 // PC-relative 16-bit reference to the symbols virtual address +#define IMAGE_REL_I386_DIR32 06 // Direct 32-bit reference to the symbols virtual address +#define IMAGE_REL_I386_DIR32NB 07 // Direct 32-bit reference to the symbols virtual address, base not included +#define IMAGE_REL_I386_SEG12 011 // Direct 16-bit reference to the segment-selector bits of a 32-bit virtual address +#define IMAGE_REL_I386_SECTION 012 +#define IMAGE_REL_I386_SECREL 013 +#define IMAGE_REL_I386_REL32 024 // PC-relative 32-bit reference to the symbols virtual address + +// +// MIPS relocation types. +// + +#define IMAGE_REL_MIPS_ABSOLUTE 0 // Reference is absolute, no relocation is necessary +#define IMAGE_REL_MIPS_REFHALF 01 +#define IMAGE_REL_MIPS_REFWORD 02 +#define IMAGE_REL_MIPS_JMPADDR 03 +#define IMAGE_REL_MIPS_REFHI 04 +#define IMAGE_REL_MIPS_REFLO 05 +#define IMAGE_REL_MIPS_GPREL 06 +#define IMAGE_REL_MIPS_LITERAL 07 +#define IMAGE_REL_MIPS_SECTION 012 +#define IMAGE_REL_MIPS_SECREL 013 +#define IMAGE_REL_MIPS_REFWORDNB 042 +#define IMAGE_REL_MIPS_PAIR 045 + +// +// Alpha Relocation types. +// + +#define IMAGE_REL_ALPHA_ABSOLUTE 0x0 +#define IMAGE_REL_ALPHA_REFLONG 0x1 +#define IMAGE_REL_ALPHA_REFQUAD 0x2 +#define IMAGE_REL_ALPHA_GPREL32 0x3 +#define IMAGE_REL_ALPHA_LITERAL 0x4 +#define IMAGE_REL_ALPHA_LITUSE 0x5 +#define IMAGE_REL_ALPHA_GPDISP 0x6 +#define IMAGE_REL_ALPHA_BRADDR 0x7 +#define IMAGE_REL_ALPHA_HINT 0x8 +#define IMAGE_REL_ALPHA_INLINE_REFLONG 0x9 +#define IMAGE_REL_ALPHA_REFHI 0xA +#define IMAGE_REL_ALPHA_REFLO 0xB +#define IMAGE_REL_ALPHA_PAIR 0xC +#define IMAGE_REL_ALPHA_MATCH 0xD +#define IMAGE_REL_ALPHA_SECTION 0xE +#define IMAGE_REL_ALPHA_SECREL 0xF +#define IMAGE_REL_ALPHA_REFLONGNB 0x10 + +// +// IBM PowerPC relocation types. +// + +#define IMAGE_REL_PPC_ABSOLUTE 0x0000 // NOP +#define IMAGE_REL_PPC_ADDR64 0x0001 // 64-bit address +#define IMAGE_REL_PPC_ADDR32 0x0002 // 32-bit address +#define IMAGE_REL_PPC_ADDR24 0x0003 // 26-bit address, shifted left 2 (branch absolute) +#define IMAGE_REL_PPC_ADDR16 0x0004 // 16-bit address +#define IMAGE_REL_PPC_ADDR14 0x0005 // 16-bit address, shifted left 2 (load doubleword) +#define IMAGE_REL_PPC_REL24 0x0006 // 26-bit PC-relative offset, shifted left 2 (branch relative) +#define IMAGE_REL_PPC_REL14 0x0007 // 16-bit PC-relative offset, shifted left 2 (br cond relative) +#define IMAGE_REL_PPC_TOCREL16 0x0008 // 16-bit offset from TOC base +#define IMAGE_REL_PPC_TOCREL14 0x0009 // 16-bit offset from TOC base, shifted left 2 (load doubleword) + +#define IMAGE_REL_PPC_ADDR32NB 0x000A // 32-bit addr w/o image base +#define IMAGE_REL_PPC_SECREL 0x000B // va of containing section (as in an image sectionhdr) +#define IMAGE_REL_PPC_SECTION 0x000C // sectionheader number +#define IMAGE_REL_PPC_IFGLUE 0x000D // substitute TOC restore instruction iff symbol is glue code +#define IMAGE_REL_PPC_IMGLUE 0x000E // symbol is glue code; virtual address is TOC restore instruction + +#define IMAGE_REL_PPC_TYPEMASK 0x00FF // mask to isolate above values in IMAGE_RELOCATION.Type + +// Flag bits in IMAGE_RELOCATION.TYPE + +#define IMAGE_REL_PPC_NEG 0x0100 // subtract reloc value rather than adding it +#define IMAGE_REL_PPC_BRTAKEN 0x0200 // fix branch prediction bit to predict branch taken +#define IMAGE_REL_PPC_BRNTAKEN 0x0400 // fix branch prediction bit to predict branch not taken +#define IMAGE_REL_PPC_TOCDEFN 0x0800 // toc slot defined in file (or, data in toc) + +// +// Based relocation format. +// + +typedef struct _IMAGE_BASE_RELOCATION { + UINT32 VirtualAddress; + UINT32 SizeOfBlock; +// UINT16 TypeOffset[1]; +} IMAGE_BASE_RELOCATION, *PIMAGE_BASE_RELOCATION; + +#define IMAGE_SIZEOF_BASE_RELOCATION 8 + +// +// Based relocation types. +// + +#define IMAGE_REL_BASED_ABSOLUTE 0 +#define IMAGE_REL_BASED_HIGH 1 +#define IMAGE_REL_BASED_LOW 2 +#define IMAGE_REL_BASED_HIGHLOW 3 +#define IMAGE_REL_BASED_HIGHADJ 4 +#define IMAGE_REL_BASED_MIPS_JMPADDR 5 +#define IMAGE_REL_BASED_IA64_IMM64 9 +#define IMAGE_REL_BASED_DIR64 10 + +// +// Line number format. +// + +typedef struct _IMAGE_LINENUMBER { + union { + UINT32 SymbolTableIndex; // Symbol table index of function name if Linenumber is 0. + UINT32 VirtualAddress; // Virtual address of line number. + } Type; + UINT16 Linenumber; // Line number. +} IMAGE_LINENUMBER; + +#define IMAGE_SIZEOF_LINENUMBER 6 + +// +// Archive format. +// + +#define IMAGE_ARCHIVE_START_SIZE 8 +#define IMAGE_ARCHIVE_START "!\n" +#define IMAGE_ARCHIVE_END "`\n" +#define IMAGE_ARCHIVE_PAD "\n" +#define IMAGE_ARCHIVE_LINKER_MEMBER "/ " +#define IMAGE_ARCHIVE_LONGNAMES_MEMBER "// " + +typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER { + UINT8 Name[16]; // File member name - `/' terminated. + UINT8 Date[12]; // File member date - decimal. + UINT8 UserID[6]; // File member user id - decimal. + UINT8 GroupID[6]; // File member group id - decimal. + UINT8 Mode[8]; // File member mode - octal. + UINT8 Size[10]; // File member size - decimal. + UINT8 EndHeader[2]; // String to end header. +} IMAGE_ARCHIVE_MEMBER_HEADER, *PIMAGE_ARCHIVE_MEMBER_HEADER; + +#define IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR 60 + +// +// DLL support. +// + +// +// Export Format +// + +typedef struct _IMAGE_EXPORT_DIRECTORY { + UINT32 Characteristics; + UINT32 TimeDateStamp; + UINT16 MajorVersion; + UINT16 MinorVersion; + UINT32 Name; + UINT32 Base; + UINT32 NumberOfFunctions; + UINT32 NumberOfNames; + UINT32 *AddressOfFunctions; + UINT32 *AddressOfNames; + UINT32 *AddressOfNameOrdinals; +} IMAGE_EXPORT_DIRECTORY, *PIMAGE_EXPORT_DIRECTORY; + +// +// Import Format +// + +typedef struct _IMAGE_IMPORT_BY_NAME { + UINT16 Hint; + UINT8 Name[1]; +} IMAGE_IMPORT_BY_NAME, *PIMAGE_IMPORT_BY_NAME; + +typedef struct _IMAGE_THUNK_DATA { + union { + UINT32 Function; + UINT32 Ordinal; + PIMAGE_IMPORT_BY_NAME AddressOfData; + } u1; +} IMAGE_THUNK_DATA, *PIMAGE_THUNK_DATA; + +#define IMAGE_ORDINAL_FLAG 0x80000000 +#define IMAGE_SNAP_BY_ORDINAL(Ordinal) ((Ordinal & IMAGE_ORDINAL_FLAG) != 0) +#define IMAGE_ORDINAL(Ordinal) (Ordinal & 0xffff) + +typedef struct _IMAGE_IMPORT_DESCRIPTOR { + UINT32 Characteristics; + UINT32 TimeDateStamp; + UINT32 ForwarderChain; + UINT32 Name; + PIMAGE_THUNK_DATA FirstThunk; +} IMAGE_IMPORT_DESCRIPTOR, *PIMAGE_IMPORT_DESCRIPTOR; + +#endif diff --git a/efi32/include/efi/libsmbios.h b/efi32/include/efi/libsmbios.h new file mode 100644 index 00000000..8f1a28e5 --- /dev/null +++ b/efi32/include/efi/libsmbios.h @@ -0,0 +1,132 @@ +#ifndef _LIB_SMBIOS_H +#define _LIB_SMBIOS_H +/*++ + +Copyright (c) 2000 Intel Corporation + +Module Name: + + LibSmbios.h + +Abstract: + + Lib include for SMBIOS services. Used to get system serial number and GUID + +Revision History + +--*/ + +// +// Define SMBIOS tables. +// +#pragma pack(1) +typedef struct { + UINT8 AnchorString[4]; + UINT8 EntryPointStructureChecksum; + UINT8 EntryPointLength; + UINT8 MajorVersion; + UINT8 MinorVersion; + UINT16 MaxStructureSize; + UINT8 EntryPointRevision; + UINT8 FormattedArea[5]; + UINT8 IntermediateAnchorString[5]; + UINT8 IntermediateChecksum; + UINT16 TableLength; + UINT32 TableAddress; + UINT16 NumberOfSmbiosStructures; + UINT8 SmbiosBcdRevision; +} SMBIOS_STRUCTURE_TABLE; + +// +// Please note that SMBIOS structures can be odd byte aligned since the +// unformated section of each record is a set of arbitrary size strings. +// + +typedef struct { + UINT8 Type; + UINT8 Length; + UINT8 Handle[2]; +} SMBIOS_HEADER; + +typedef UINT8 SMBIOS_STRING; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Vendor; + SMBIOS_STRING BiosVersion; + UINT8 BiosSegment[2]; + SMBIOS_STRING BiosReleaseDate; + UINT8 BiosSize; + UINT8 BiosCharacteristics[8]; +} SMBIOS_TYPE0; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Manufacturer; + SMBIOS_STRING ProductName; + SMBIOS_STRING Version; + SMBIOS_STRING SerialNumber; + + // + // always byte copy this data to prevent alignment faults! + // + EFI_GUID Uuid; + + UINT8 WakeUpType; +} SMBIOS_TYPE1; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Manufacturer; + SMBIOS_STRING ProductName; + SMBIOS_STRING Version; + SMBIOS_STRING SerialNumber; +} SMBIOS_TYPE2; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Manufacturer; + UINT8 Type; + SMBIOS_STRING Version; + SMBIOS_STRING SerialNumber; + SMBIOS_STRING AssetTag; + UINT8 BootupState; + UINT8 PowerSupplyState; + UINT8 ThermalState; + UINT8 SecurityStatus; + UINT8 OemDefined[4]; +} SMBIOS_TYPE3; + +typedef struct { + SMBIOS_HEADER Hdr; + UINT8 Socket; + UINT8 ProcessorType; + UINT8 ProcessorFamily; + SMBIOS_STRING ProcessorManufacture; + UINT8 ProcessorId[8]; + SMBIOS_STRING ProcessorVersion; + UINT8 Voltage; + UINT8 ExternalClock[2]; + UINT8 MaxSpeed[2]; + UINT8 CurrentSpeed[2]; + UINT8 Status; + UINT8 ProcessorUpgrade; + UINT8 L1CacheHandle[2]; + UINT8 L2CacheHandle[2]; + UINT8 L3CacheHandle[2]; +} SMBIOS_TYPE4; + +typedef union { + SMBIOS_HEADER *Hdr; + SMBIOS_TYPE0 *Type0; + SMBIOS_TYPE1 *Type1; + SMBIOS_TYPE2 *Type2; + SMBIOS_TYPE3 *Type3; + SMBIOS_TYPE4 *Type4; + UINT8 *Raw; +} SMBIOS_STRUCTURE_POINTER; +#pragma pack() + + +#endif + diff --git a/efi32/include/efi/pci22.h b/efi32/include/efi/pci22.h new file mode 100644 index 00000000..b94f5198 --- /dev/null +++ b/efi32/include/efi/pci22.h @@ -0,0 +1,193 @@ +#ifndef _PCI22_H +#define _PCI22_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + pci22.h + +Abstract: + Support for PCI 2.2 standard. + + + + +Revision History + +--*/ + +#ifdef SOFT_SDV +#define PCI_MAX_BUS 1 +#else +#define PCI_MAX_BUS 255 +#endif + +#define PCI_MAX_DEVICE 31 +#define PCI_MAX_FUNC 7 + +// +// Command +// +#define PCI_VGA_PALETTE_SNOOP_DISABLED 0x20 + +#pragma pack(1) +typedef struct { + UINT16 VendorId; + UINT16 DeviceId; + UINT16 Command; + UINT16 Status; + UINT8 RevisionID; + UINT8 ClassCode[3]; + UINT8 CacheLineSize; + UINT8 LaytencyTimer; + UINT8 HeaderType; + UINT8 BIST; +} PCI_DEVICE_INDEPENDENT_REGION; + +typedef struct { + UINT32 Bar[6]; + UINT32 CISPtr; + UINT16 SubsystemVendorID; + UINT16 SubsystemID; + UINT32 ExpansionRomBar; + UINT32 Reserved[2]; + UINT8 InterruptLine; + UINT8 InterruptPin; + UINT8 MinGnt; + UINT8 MaxLat; +} PCI_DEVICE_HEADER_TYPE_REGION; + +typedef struct { + PCI_DEVICE_INDEPENDENT_REGION Hdr; + PCI_DEVICE_HEADER_TYPE_REGION Device; +} PCI_TYPE00; + +typedef struct { + UINT32 Bar[2]; + UINT8 PrimaryBus; + UINT8 SecondaryBus; + UINT8 SubordinateBus; + UINT8 SecondaryLatencyTimer; + UINT8 IoBase; + UINT8 IoLimit; + UINT16 SecondaryStatus; + UINT16 MemoryBase; + UINT16 MemoryLimit; + UINT16 PrefetchableMemoryBase; + UINT16 PrefetchableMemoryLimit; + UINT32 PrefetchableBaseUpper32; + UINT32 PrefetchableLimitUpper32; + UINT16 IoBaseUpper16; + UINT16 IoLimitUpper16; + UINT32 Reserved; + UINT32 ExpansionRomBAR; + UINT8 InterruptLine; + UINT8 InterruptPin; + UINT16 BridgeControl; +} PCI_BRIDGE_CONTROL_REGISTER; + +#define PCI_CLASS_DISPLAY_CTRL 0x03 +#define PCI_CLASS_VGA 0x00 + +#define PCI_CLASS_BRIDGE 0x06 +#define PCI_CLASS_ISA 0x01 +#define PCI_CLASS_ISA_POSITIVE_DECODE 0x80 + +#define PCI_CLASS_NETWORK 0x02 +#define PCI_CLASS_ETHERNET 0x00 + +#define HEADER_TYPE_DEVICE 0x00 +#define HEADER_TYPE_PCI_TO_PCI_BRIDGE 0x01 +#define HEADER_TYPE_MULTI_FUNCTION 0x80 +#define HEADER_LAYOUT_CODE 0x7f + +#define IS_PCI_BRIDGE(_p) ((((_p)->Hdr.HeaderType) & HEADER_LAYOUT_CODE) == HEADER_TYPE_PCI_TO_PCI_BRIDGE) +#define IS_PCI_MULTI_FUNC(_p) (((_p)->Hdr.HeaderType) & HEADER_TYPE_MULTI_FUNCTION) + +typedef struct { + PCI_DEVICE_INDEPENDENT_REGION Hdr; + PCI_BRIDGE_CONTROL_REGISTER Bridge; +} PCI_TYPE01; + +typedef struct { + UINT8 Register; + UINT8 Function; + UINT8 Device; + UINT8 Bus; + UINT8 Reserved[4]; +} DEFIO_PCI_ADDR; + +typedef struct { + UINT32 Reg : 8; + UINT32 Func : 3; + UINT32 Dev : 5; + UINT32 Bus : 8; + UINT32 Reserved: 7; + UINT32 Enable : 1; +} PCI_CONFIG_ACCESS_CF8; + +#pragma pack() + +#define EFI_ROOT_BRIDGE_LIST 'eprb' +typedef struct { + UINTN Signature; + + UINT16 BridgeNumber; + UINT16 PrimaryBus; + UINT16 SubordinateBus; + + EFI_DEVICE_PATH *DevicePath; + + LIST_ENTRY Link; +} PCI_ROOT_BRIDGE_ENTRY; + + +#define PCI_EXPANSION_ROM_HEADER_SIGNATURE 0xaa55 +#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1 +#define PCI_DATA_STRUCTURE_SIGNATURE EFI_SIGNATURE_32('P','C','I','R') + +#pragma pack(1) +typedef struct { + UINT16 Signature; // 0xaa55 + UINT8 Reserved[0x16]; + UINT16 PcirOffset; +} PCI_EXPANSION_ROM_HEADER; + + +typedef struct { + UINT16 Signature; // 0xaa55 + UINT16 InitializationSize; + UINT16 EfiSignature; // 0x0EF1 + UINT16 EfiSubsystem; + UINT16 EfiMachineType; + UINT8 Reserved[0x0A]; + UINT16 EfiImageHeaderOffset; + UINT16 PcirOffset; +} EFI_PCI_EXPANSION_ROM_HEADER; + +typedef struct { + UINT32 Signature; // "PCIR" + UINT16 VendorId; + UINT16 DeviceId; + UINT16 Reserved0; + UINT16 Length; + UINT8 Revision; + UINT8 ClassCode[3]; + UINT16 ImageLength; + UINT16 CodeRevision; + UINT8 CodeType; + UINT8 Indicator; + UINT16 Reserved1; +} PCI_DATA_STRUCTURE; +#pragma pack() + +#endif + + + + + + diff --git a/efi32/include/efi/protocol/adapterdebug.h b/efi32/include/efi/protocol/adapterdebug.h new file mode 100644 index 00000000..d70af5df --- /dev/null +++ b/efi32/include/efi/protocol/adapterdebug.h @@ -0,0 +1,32 @@ +#ifndef _ADAPTER_DEBUG_H +#define _ADAPTER_DEBUG_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + AdapterDebug.h + +Abstract: + + Protocol to debug the EDD 3.0 enablement of BIOS option ROMs + + + +Revision History + +--*/ + +// {82F86881-282B-11d4-BC7D-0080C73C8881} +#define ADAPTER_DEBUG_PROTOCOL \ +{ 0x82f86881, 0x282b, 0x11d4, {0xbc, 0x7d, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + +// +// This protocol points to the BIOS_LEGACY_DRIVE data structure +// see edd.h for more details +// + +#endif + diff --git a/efi32/include/efi/protocol/eficonsplit.h b/efi32/include/efi/protocol/eficonsplit.h new file mode 100644 index 00000000..15adb925 --- /dev/null +++ b/efi32/include/efi/protocol/eficonsplit.h @@ -0,0 +1,32 @@ +#ifndef _EFI_CONFORK_H +#define _EFI_CONFORK_H +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + +Abstract: + + + +Revision History + +--*/ + + + +// +// ConOut Forker Protocol +// + +#define TEXT_OUT_SPLITER_PROTOCOL \ + { 0x56d830a0, 0x7e7a, 0x11d3, {0xbb, 0xa0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +#define ERROR_OUT_SPLITER_PROTOCOL \ + { 0xf0ba9039, 0x68f1, 0x425e, {0xaa, 0x7f, 0xd9, 0xaa, 0xf9, 0x1b, 0x82, 0xa1}} + +#define TEXT_IN_SPLITER_PROTOCOL \ + { 0xf9a3c550, 0x7fb5, 0x11d3, {0xbb, 0xa0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +#endif diff --git a/efi32/include/efi/protocol/efidbg.h b/efi32/include/efi/protocol/efidbg.h new file mode 100644 index 00000000..1f95a70b --- /dev/null +++ b/efi32/include/efi/protocol/efidbg.h @@ -0,0 +1,210 @@ +/* + * Copyright (c) 1999, 2000 + * Intel Corporation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * + * This product includes software developed by Intel Corporation and + * its contributors. + * + * 4. Neither the name of Intel Corporation or its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION AND CONTRIBUTORS ``AS IS'' + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef _EFIDBG_H_ +#define _EFIDBG_H_ + +#include "eficontext.h" +#include "efiser.h" + +typedef struct _DEBUGPORT_16550_CONFIG_DATA { + UINT32 PortAddress; + UINT64 BaudRate; + UINT32 ReceiveFifoDepth; + UINT32 Timeout; + UINT8 Parity; + UINT8 DataBits; + UINT8 StopBits; + UINT32 ControlMask; + BOOLEAN RtsCtsEnable; // RTS, CTS control +} DEBUGPORT_16550_CONFIG_DATA; + +typedef struct _DEBUGPORT_16550_DEVICE_PATH { + EFI_DEVICE_PATH Header; + DEBUGPORT_16550_CONFIG_DATA ConfigData; +} DEBUGPORT_16550_DEVICE_PATH; + +typedef union { + EFI_DEVICE_PATH DevPath; + DEBUGPORT_16550_DEVICE_PATH Uart; + // add new types of debugport device paths to this union... +} DEBUGPORT_DEV_PATH; + + +// +// Debug Support protocol {2755590C-6F3C-42FA-9EA4-A3BA543CDA25} +// + +#define DEBUG_SUPPORT_PROTOCOL \ +{ 0x2755590C, 0x6F3C, 0x42fa, 0x9E, 0xA4, 0xA3, 0xBA, 0x54, 0x3C, 0xDA, 0x25 } + + +typedef UINTN EXCEPTION_TYPE; + +typedef +VOID +(*EXCEPTION_HANDLER) ( + IN EXCEPTION_TYPE ExceptionType, + IN SYSTEM_CONTEXT *SystemContext + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REGISTER_TIMER_TICK_CALLBACK) ( + IN struct _EFI_DEBUG_SUPPORT_INTERFACE *This, + IN EXCEPTION_HANDLER TimerTickCallback + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REGISTER_EXCEPTION_HANDLER) ( + IN struct _EFI_DEBUG_SUPPORT_INTERFACE *This, + IN EXCEPTION_HANDLER ExceptionHandler, + IN EXCEPTION_TYPE ExceptionType + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP_CALL_TRACE) ( + IN struct _EFI_DEBUG_SUPPORT_INTERFACE *This + ); + + +#define EFI_DEBUG_SUPPORT_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_DEBUG_SUPPORT_INTERFACE { + UINT32 Revision; + EFI_REGISTER_TIMER_TICK_CALLBACK RegisterTimerTickCallback; + EFI_REGISTER_EXCEPTION_HANDLER RegisterExceptionHandler; + EFI_IP_CALL_TRACE IpCallTrace; +} EFI_DEBUG_SUPPORT_INTERFACE; + + +// +// Debugport io protocol {EBA4E8D2-3858-41EC-A281-2647BA9660D0} +// + +#define DEBUGPORT_IO_PROTOCOL \ +{ 0XEBA4E8D2, 0X3858, 0X41EC, 0XA2, 0X81, 0X26, 0X47, 0XBA, 0X96, 0X60, 0XD0 } + + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUGPORT_IO_RESET) ( + IN struct _EFI_DEBUGPORT_IO_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUGPORT_IO_READ) ( + IN struct _EFI_DEBUGPORT_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUGPORT_IO_WRITE) ( + IN struct _EFI_DEBUGPORT_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + IN VOID *Buffer + ); + +#define EFI_DEBUGPORT_IO_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_DEBUGPORT_IO_INTERFACE { + UINT32 Revision; + EFI_DEBUGPORT_IO_READ Read; + EFI_DEBUGPORT_IO_WRITE Write; + EFI_DEBUGPORT_IO_RESET Reset; +} EFI_DEBUGPORT_IO_INTERFACE; + + +// +// Debugport UART16550 control protocol {628EA978-4C26-4605-BC02-A42A496917DD} +// + +#define DEBUGPORT_UART16550_CONTROL_PROTOCOL \ +{ 0X628EA978, 0X4C26, 0X4605, 0XBC, 0X2, 0XA4, 0X2A, 0X49, 0X69, 0X17, 0XDD } + +// Note: The definitions for EFI_PARITY_TYPE, EFI_STOP_BITS_TYPE, and +// SERIAL_IO_MODE are included from efiser.h + +typedef +EFI_STATUS +(EFIAPI *EFI_UART16550_SET_ATTRIBUTES) ( + IN struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE *This, + IN UINT64 BaudRate, + IN UINT32 ReceiveFifoDepth, + IN UINT32 Timeout, + IN EFI_PARITY_TYPE Parity, + IN UINT8 DataBits, + IN EFI_STOP_BITS_TYPE StopBits + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UART16550_SET_CONTROL_BITS) ( + IN struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE *This, + IN UINT32 Control + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UART16550_GET_CONTROL_BITS) ( + IN struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE *This, + OUT UINT32 *Control + ); + +#define EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE { + UINT32 Revision; + EFI_UART16550_SET_ATTRIBUTES SetAttributes; + EFI_UART16550_SET_CONTROL_BITS SetControl; + EFI_UART16550_GET_CONTROL_BITS GetControl; + DEBUGPORT_16550_CONFIG_DATA *Mode; +} EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE; + + +#define DEVICE_PATH_DEBUGPORT DEBUGPORT_IO_PROTOCOL + +#endif /* _EFIDBG_H_ */ diff --git a/efi32/include/efi/protocol/efivar.h b/efi32/include/efi/protocol/efivar.h new file mode 100644 index 00000000..92dc506a --- /dev/null +++ b/efi32/include/efi/protocol/efivar.h @@ -0,0 +1,133 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + +Abstract: + + + +Revision History + +--*/ + + + +// +// The variable store protocol interface is specific to the reference +// implementation. The initialization code adds variable store devices +// to the system, and the FW connects to the devices to provide the +// variable store interfaces through these devices. +// + +// +// Variable Store Device protocol +// + +#define VARIABLE_STORE_PROTOCOL \ + { 0xf088cd91, 0xa046, 0x11d2, {0x8e, 0x42, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_EFI_VARIABLE_STORE); + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_CLEAR) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN OUT VOID *Scratch + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_READ) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN UINTN Offset, + IN UINTN BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_UPDATE) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN UINTN Offset, + IN UINTN BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_SIZE) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN NoBanks + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TRANSACTION_UPDATE) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN VOID *NewContents + ); + +typedef struct _EFI_VARIABLE_STORE { + + // + // Number of banks and bank size + // + + UINT32 Attributes; + UINT32 BankSize; + UINT32 NoBanks; + + // + // Functions to access the storage banks + // + + EFI_STORE_CLEAR ClearStore; + EFI_STORE_READ ReadStore; + EFI_STORE_UPDATE UpdateStore; + EFI_STORE_SIZE SizeStore OPTIONAL; + EFI_TRANSACTION_UPDATE TransactionUpdate OPTIONAL; + +} EFI_VARIABLE_STORE; + + +// +// +// ClearStore() - A function to clear the requested storage bank. A cleared +// bank contains all "on" bits. +// +// ReadStore() - Read data from the requested store. +// +// UpdateStore() - Updates data on the requested store. The FW will only +// ever issue updates to clear bits in the store. Updates must be +// performed in LSb to MSb order of the update buffer. +// +// SizeStore() - An optional function for non-runtime stores that can be +// dynamically sized. The FW will only ever increase or decrease the store +// by 1 banksize at a time, and it is always adding or removing a bank from +// the end of the store. +// +// By default the FW will update variables and storage banks in an +// "atomic" manner by keeping 1 old copy of the data during an update, +// and recovering appropiately if the power is lost during the middle +// of an operation. To do this the FW needs to have multiple banks +// of storage dedicated to its use. If that's not possible, the driver +// can implement an atomic bank update function and the FW will allow +// 1 bank in this case. (It will allow any number of banks, +// but it won't require an "extra" bank to provide its bank transaction +// function). +// +// TransactionUpdate() - An optional function that can clear & update an +// entire bank in an "atomic" fashion. If the operation fails in the +// middle the driver is responsible for having either the previous copy +// of the bank's data or the new copy. A copy that's partially written +// is not valid as internal data settings may get lost. Supply this +// function only when needed. +// + diff --git a/efi32/include/efi/protocol/intload.h b/efi32/include/efi/protocol/intload.h new file mode 100644 index 00000000..fb24e3f4 --- /dev/null +++ b/efi32/include/efi/protocol/intload.h @@ -0,0 +1,27 @@ +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + intload + +Abstract: + + EFI support for loading internally linked in apps + + + +Revision History + +--*/ + +#ifndef _INTERNAL_LOAD_INCLUDE_ +#define _INTERNAL_LOAD_INCLUDE_ + +// {D65A6B8C-71E5-4df0-A909-F0D2992B5AA9} +#define INTERNAL_SHELL_GUID \ + { 0xd65a6b8c, 0x71e5, 0x4df0, {0xa9, 0x09, 0xf0, 0xd2, 0x99, 0x2b, 0x5a, 0xa9} } + + +#endif diff --git a/efi32/include/efi/protocol/legacyboot.h b/efi32/include/efi/protocol/legacyboot.h new file mode 100644 index 00000000..16e94e7e --- /dev/null +++ b/efi32/include/efi/protocol/legacyboot.h @@ -0,0 +1,119 @@ +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + legacyboot + +Abstract: + + EFI support for legacy boot + + + +Revision History + +--*/ + +#ifndef _LEGACY_BOOT_INCLUDE_ +#define _LEGACY_BOOT_INCLUDE_ + +#define LEGACY_BOOT_PROTOCOL \ + { 0x376e5eb2, 0x30e4, 0x11d3, { 0xba, 0xe5, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81 } } + +#pragma pack(1) + +// +// BBS 1.01 (See Appendix A) IPL and BCV Table Entry Data structure. +// Seg:Off pointers have been converted to EFI pointers in this data structure +// This is the structure that also maps to the EFI device path for the boot selection +// +typedef struct { + UINT16 DeviceType; + UINT16 StatusFlag; + UINT32 Reserved; + VOID *BootHandler; // Not an EFI entry point + CHAR8 *DescString; +} BBS_TABLE_ENTRY; +#pragma pack() + +typedef +EFI_STATUS +(EFIAPI *LEGACY_BOOT_CALL) ( + IN EFI_DEVICE_PATH *DevicePath + ); + + +// +// BBS support functions +// PnP Call numbers and BiosSelector hidden in implementation +// + +typedef enum { + IplRelative, + BcvRelative +} BBS_TYPE; + +INTERFACE_DECL(_LEGACY_BOOT_INTERFACE); + +// +// == PnP Function 0x60 then BbsVersion == 0x0101 if this call fails then BbsVersion == 0x0000 +// + +// +// == PnP Function 0x61 +// +typedef +EFI_STATUS +(EFIAPI *GET_DEVICE_COUNT) ( + IN struct _LEGACY_BOOT_INTERFACE *This, + IN BBS_TYPE *TableType, + OUT UINTN *DeviceCount, + OUT UINTN *MaxCount + ); + +// +// == PnP Function 0x62 +// +typedef +EFI_STATUS +(EFIAPI *GET_PRIORITY_AND_TABLE) ( + IN struct _LEGACY_BOOT_INTERFACE *This, + IN BBS_TYPE *TableType, + IN OUT UINTN *PrioritySize, // MaxCount * sizeof(UINT8) + OUT UINTN *Priority, + IN OUT UINTN *TableSize, // MaxCount * sizeof(BBS_TABLE_ENTRY) + OUT BBS_TABLE_ENTRY *TableEntrySize + ); + +// +// == PnP Function 0x63 +// +typedef +EFI_STATUS +(EFIAPI *SET_PRIORITY) ( + IN struct _LEGACY_BOOT_INTERFACE *This, + IN BBS_TYPE *TableType, + IN OUT UINTN *PrioritySize, + OUT UINTN *Priority + ); + +typedef struct _LEGACY_BOOT_INTERFACE { + LEGACY_BOOT_CALL BootIt; + + // + // New functions to allow BBS booting to be configured from EFI + // + UINTN BbsVersion; // Currently 0x0101 + GET_DEVICE_COUNT GetDeviceCount; + GET_PRIORITY_AND_TABLE GetPriorityAndTable; + SET_PRIORITY SetPriority; +} LEGACY_BOOT_INTERFACE; + +EFI_STATUS +PlInitializeLegacyBoot ( + VOID + ); + +#endif diff --git a/efi32/include/efi/protocol/piflash64.h b/efi32/include/efi/protocol/piflash64.h new file mode 100644 index 00000000..d521dfcc --- /dev/null +++ b/efi32/include/efi/protocol/piflash64.h @@ -0,0 +1,121 @@ +#ifndef _PIFLASH64_H +#define _PIFLASH64_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + PIflash64.h + +Abstract: + + Iflash64.efi protocol to abstract iflash from + the system. + +Revision History + +--*/ + +// +// Guid that identifies the IFLASH protocol +// +#define IFLASH64_PROTOCOL_PROTOCOL \ + { 0x65cba110, 0x74ab, 0x11d3, 0xbb, 0x89, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81 }; + +// +// Unlock FLASH from StartAddress to EndAddress and return a LockKey +// +typedef +EFI_STATUS +(EFIAPI *UNLOCK_FLASH_API)( + IN struct _IFLASH64_PROTOCOL_INTERFACE *This + ); + +// +// Lock the flash represented by the LockKey +// +typedef +EFI_STATUS +(EFIAPI *LOCK_FLASH_API)( + IN struct _IFLASH64_PROTOCOL_INTERFACE *This + ); + +// +// Status callback for a utility like IFLASH64 +// +// Token would map to a list like Ted proposed. The utility has no idea what +// happens on the other side. +// ErrorStatus - Level of Error or success. Independent of Token. If you +// don't know the token you will at least know pass or fail. +// String - Optional extra information about the error. Could be used for +// debug or future expansion +// +// Attributes - Options screen attributes for String. Could allow the string to be different colors. +// +typedef +EFI_STATUS +(EFIAPI *UTILITY_PROGRESS_API)( + IN struct _IFLASH64_PROTOCOL_INTERFACE *This, + IN UINTN Token, + IN EFI_STATUS ErrorStatus, + IN CHAR16 *String, OPTIONAL + IN UINTN *Attributes OPTIONAL + ); + +// +// Token Values +// +// IFlash64 Token Codes +#define IFLASH_TOKEN_IFLASHSTART 0xB0 // IFlash64 has started +#define IFLASH_TOKEN_READINGFILE 0xB1 // Reading File +#define IFLASH_TOKEN_INITVPP 0xB2 // Initializing Vpp +#define IFLASH_TOKEN_DISABLEVPP 0x10 // Disable Vpp +#define IFLASH_TOKEN_FLASHUNLOCK 0xB3 // Unlocking FLASH Devices +#define IFLASH_TOKEN_FLASHERASE 0xB4 // Erasing FLASH Devices +#define IFLASH_TOKEN_FLASHPROGRAM 0xB5 // Programming FLASH +#define IFLASH_TOKEN_FLASHVERIFY 0xB6 // Verifying FLASH +#define IFLASH_TOKEN_UPDATESUCCES 0xB7 // FLASH Updage Success! + +#define IFLASH_TOKEN_PROGRESS_READINGFILE 0x11 // % Reading File +#define IFLASH_TOKEN_PROGRESS_FLASHUNLOCK 0x13 // % Unlocking FLASH Devices +#define IFLASH_TOKEN_PROGRESS_FLASHERASE 0x14 // % Erasing FLASH Devices +#define IFLASH_TOKEN_PROGRESS_FLASHPROGRAM 0x15 // % Programming FLASH +#define IFLASH_TOKEN_PROGRESS_FLASHVERIFY 0x16 // % Verifying FLASH + +#define IFLASH_TOKEN_READINGFILE_ER 0xB8 // File Read Error +#define IFLASH_TOKEN_INITVPP_ER 0xB9 // Initialization of IFB Error +#define IFLASH_TOKEN_FLASHUNLOCK_ER 0xBA // FLASH Unlock Error +#define IFLASH_TOKEN_FLASHERASE_ER 0xBB // FLASH Erase Error +#define IFLASH_TOKEN_FLASHVERIFY_ER 0xBC // FLASH Verify Error +#define IFLASH_TOKEN_FLASHPROG_ER 0xBD // FLASH Program Error + +#define IFLASH_TABLE_END 0x00 + +// +// If this number changes one of the existing API's has changes +// +#define IFLASH_PI_MAJOR_VERSION 0x01 + +// +// This number changes when new APIs or data variables get added to the end +// of the data structure +// +#define IFLASH_PI_MINOR_VERSION 0x01 + +typedef struct _IFLASH64_PROTOCOL_INTERFACE { + UINT32 MajorVersion; + UINT32 MinorVersion; + UNLOCK_FLASH_API UnlockFlash; + LOCK_FLASH_API LockFlash; + UTILITY_PROGRESS_API Progress; + + // + // Future expansion goes here + // + +} IFLASH64_PROTOCOL_INTERFACE; + + +#endif diff --git a/efi32/include/efi/protocol/vgaclass.h b/efi32/include/efi/protocol/vgaclass.h new file mode 100644 index 00000000..d0deb5ce --- /dev/null +++ b/efi32/include/efi/protocol/vgaclass.h @@ -0,0 +1,95 @@ +#ifndef _VGA_CLASS_H +#define _VGA_CLASS_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + VgaClass.h + +Abstract: + + Vga Mini port binding to Vga Class protocol + + + +Revision History + +--*/ + +// +// VGA Device Structure +// + +// {0E3D6310-6FE4-11d3-BB81-0080C73C8881} +#define VGA_CLASS_DRIVER_PROTOCOL \ + { 0xe3d6310, 0x6fe4, 0x11d3, {0xbb, 0x81, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + +typedef +EFI_STATUS +(* INIT_VGA_CARD) ( + IN UINTN VgaMode, + IN VOID *Context + ); + +typedef struct { + UINTN MaxColumns; + UINTN MaxRows; +} MAX_CONSOLE_GEOMETRY; + +#define VGA_CON_OUT_DEV_SIGNATURE EFI_SIGNATURE_32('c','v','g','a') +typedef struct { + UINTN Signature; + + EFI_HANDLE Handle; + SIMPLE_TEXT_OUTPUT_INTERFACE ConOut; + SIMPLE_TEXT_OUTPUT_MODE ConOutMode; + EFI_DEVICE_PATH *DevicePath; + + UINT8 *Buffer; + EFI_DEVICE_IO_INTERFACE *DeviceIo; + + // + // Video Card Context + // + INIT_VGA_CARD InitVgaCard; + VOID *VgaCardContext; + MAX_CONSOLE_GEOMETRY *Geometry; + // + // Video buffer normally 0xb8000 + // + UINT64 VideoBuffer; + + // + // Clear Screen & Default Attribute + // + UINT32 Attribute; + + // + // -1 means search for active VGA device + // + EFI_PCI_ADDRESS_UNION Pci; +} VGA_CON_OUT_DEV; + +#define VGA_CON_OUT_DEV_FROM_THIS(a) CR(a, VGA_CON_OUT_DEV, ConOut, VGA_CON_OUT_DEV_SIGNATURE) + +// +// Vga Class Driver Protocol. +// GUID defined in EFI Lib +// + +typedef +EFI_STATUS +(EFIAPI *INSTALL_VGA_DRIVER) ( + IN VGA_CON_OUT_DEV *ConOutDev + ); + +typedef struct { + UINT32 Version; + INSTALL_VGA_DRIVER InstallGenericVgaDriver; +} INSTALL_VGA_DRIVER_INTERFACE; + +#endif + diff --git a/efi32/include/efi/romload.h b/efi32/include/efi/romload.h new file mode 100644 index 00000000..05060112 --- /dev/null +++ b/efi32/include/efi/romload.h @@ -0,0 +1,41 @@ +#ifndef _EFI_ROMLOAD_H +#define _EFI_ROMLOAD_H + +#define ROM_SIGNATURE 0xaa55 +#define PCIDS_SIGNATURE "PCIR" +#pragma pack(push) +#pragma pack(1) +typedef struct +{ + UINT8 Pcids_Sig[4]; + UINT16 VendId; + UINT16 DevId; + UINT16 Vpd_Off; + UINT16 Size; + UINT8 Rev; + UINT8 Class_Code[3]; + UINT16 Image_Len; + UINT16 Rev_Lvl; + UINT8 Code_Type; + UINT8 Indi; + UINT16 Rsvd; +}PciDataStructure; +typedef struct +{ + UINT16 Size; + UINT32 Header_Sig; + UINT16 SubSystem; + UINT16 MachineType; + UINT8 Resvd[10]; + UINT16 EfiOffset; +}ArchData; +typedef struct +{ + UINT16 Rom_Sig; + ArchData Arch_Data; + UINT16 Pcids_Off; + UINT8 resvd[38]; +}RomHeader; +#pragma pack(pop) + +#endif diff --git a/efi32/lib/crt0-efi-ia32.o b/efi32/lib/crt0-efi-ia32.o new file mode 100644 index 0000000000000000000000000000000000000000..bea9af3545fea37ccefe1a82a58ad74346508402 GIT binary patch literal 868 zcwUu~&q~8U5XQeWiEX1o6%T@-UPMs{3ZB%1|Dm8Fh@eymTN`b`C?p$bPvXHt-^NEM z^yGsGeF!1$W;b>c@ZiAY+u!8N>|~SIle1I9Fpz}-6Jr8Cv~H)@H8?2ay8o5LQ%PJI z$=XeSXj?+xhK{&iU5>t!Bxy9>2eF+lKZjW_M~NHt0?wL3d8o9VtwR6F<$jmLZ86T^ zHls)tMZVnQAF%|a?=hiS&c8|STUr-HR!M!&1eS$Xpq{t%dPTFTeJ#=hWWAyNnXip} zWIj0$J!k222+Mo2kDQs#cW0`)OdI3*W-#7UMksQZutBs$>iYr)Pnss|DUFFkHXe;b_G{(1RCo7IM@B z_UIq7$cJ})dvS1HKZ2M3fQYpo#kGL*%Qte@g^Zfyh C8%P`g literal 0 HcwPel00001 diff --git a/efi32/lib/elf_ia32_efi.lds b/efi32/lib/elf_ia32_efi.lds new file mode 100644 index 00000000..975e36c1 --- /dev/null +++ b/efi32/lib/elf_ia32_efi.lds @@ -0,0 +1,75 @@ +OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") +OUTPUT_ARCH(i386) +ENTRY(_start) +SECTIONS +{ + . = 0; + ImageBase = .; + .hash : { *(.hash) } /* this MUST come first! */ + . = ALIGN(4096); + .text : + { + *(.text) + *(.text.*) + *(.gnu.linkonce.t.*) + } + . = ALIGN(4096); + .sdata : + { + *(.got.plt) + *(.got) + *(.srodata) + *(.sdata) + *(.sbss) + *(.scommon) + } + . = ALIGN(4096); + .data : + { + *(.rodata*) + *(.data) + *(.data1) + *(.data.*) + *(.sdata) + *(.got.plt) + *(.got) + /* the EFI loader doesn't seem to like a .bss section, so we stick + it all into .data: */ + *(.sbss) + *(.scommon) + *(.dynbss) + *(.bss) + *(COMMON) + } + . = ALIGN(4096); + .dynamic : { *(.dynamic) } + . = ALIGN(4096); + .rel : + { + *(.rel.data) + *(.rel.data.*) + *(.rel.got) + *(.rel.stab) + *(.data.rel.ro.local) + *(.data.rel.local) + *(.data.rel.ro) + *(.data.rel*) + } + . = ALIGN(4096); + .reloc : /* This is the PECOFF .reloc section! */ + { + *(.reloc) + } + . = ALIGN(4096); + .dynsym : { *(.dynsym) } + . = ALIGN(4096); + .dynstr : { *(.dynstr) } + . = ALIGN(4096); + /DISCARD/ : + { + *(.rel.reloc) + *(.eh_frame) + *(.note.GNU-stack) + } + .comment 0 : { *(.comment) } +} diff --git a/efi32/lib/libefi.a b/efi32/lib/libefi.a new file mode 100644 index 0000000000000000000000000000000000000000..d7445612139cee4f0725b11d3823164aed2c9043 GIT binary patch literal 90338 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 literal 0 HcwPel00001 diff --git a/efi32/lib/libgnuefi.a b/efi32/lib/libgnuefi.a new file mode 100644 index 0000000000000000000000000000000000000000..09f61b363b08592e1953cb5c2aa98972263c9f97 GIT binary patch literal 1852 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
    69)iM%36eUg&aU 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 delta 44179 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

    }9g2Wp|(b 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

    dKCz6_$mz}z+U?}anzM9c4aJkSd`ENEJqbG& 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 delta 231079 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 UQ=A2%A-=1e7giO|cHS8GKmNASSpWb4 diff --git a/efi64/com32/libutil/libutil_lnx.a b/efi64/com32/libutil/libutil_lnx.a index 89fe398a9a0e9afd72114a76be2d88942557cb3c..a23904309906567be9b64fb7c340c15ddb7b4433 100644 GIT binary patch delta 206 zcwW1*lKsj`_6gGLX6B}5W`;%^l~NhmAnfUhHjLt%moQEjLlKCO*e``5U}Bsvjv{ct ztJoe%Kw@)Xmlq$*g2{c1Vw-o&Fjqnm;Mr{~hawPj^M4Yu!1f9o#`H=Qkw04*rQybI Kmpj6^O#lFN3_8aE delta 199 zcwW1*lKsj`_6gGLhGrJ#mX?Mal~Ng@Y=g~xjBCYUoXLHRVw)o*_DjKK<&0a!QDhHz z72Bf-1ax`xp$P1lVXlNCz_Z&}4n-j5=Kmx%h`?k=3GwX}HjL?&$O3=1GD`Cy3z!^X HTp$1dGx<48 diff --git a/efi64/com32/lua/src/liblua.c32 b/efi64/com32/lua/src/liblua.c32 index 8bc9ccec54e267c70ccde48fc3d67627fc9991a8..85d8f1ec9f6c8e6ac63d7a2ce6684751cf4a1da9 100755 GIT binary patch delta 17288 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 delta 1409 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 delta 2099 zcwTjtUuaWT9LLYSw5=lmqS!)tsed<^PSQk^0 z)?%?Z)zHNnn&-4!vIjvg)_$x5tX>8w4pGcv9maYPu4ws&?!@R2tkXx}sBUVxrBnL* zhW0J2tP$>fi){Y~^$TK+;PXRp0>ZrzmvolY*EFeq2EC|W-6-itq<*DK^$AP|ME2j9 zq&BIaP~Y=3Cx{=S z_HRQnDBSz>w%SPjkybtc<3aJU(Jbj0sk1cZT3Y!O@fh{`bBoLm5cj6`_#DmBNBox; z?3815n8`|#!{eaiPLX^5ekTk$<~$@!G5+u+N!OG5so~9P*P1sFPtpo^Zk72s@$Z=A zuabK|XfnP}POo&7Mr$NK4J)Q_|9kE{6iNL6 z97|+>CpARs0PXiktIPv5=Dinqm}j#6PfOF*7slGr$+Hvv=gv)?n#@CtzoAuNnhW>A zei{s`rF5>s6)v{3_PXjSYMi)tHFP)=65LSKeV~N|EQV~JRcH?+kuHa9H=xiFWu$}f z6h{gw>QN|SpG=d@`xTmlGSZVs8x=YOe&f7vN2#Rix?%;|3Iv zz7n>1SfSs;O{8N;9fkf3D@bRNs;>VEPFTPo zqTdnWE-O8^DJuFN6>ddQI}{cD$2qEs+FC3}mvYf?+__E%m+lh#8j7iw!~$If|D=xS zGWzGO3U^a2y4eo@r1m;hULV*iB}neSrZ1+7tVqiYMSs$DDC2pNGTg zVOUJZwF$VBZgc!uY7wkVo8zy=k5$NK+N=`yCo5#qmcN85lrdYN!?yrhXWH`rhI7!1 z+00&<%|HRO+W#q(F{{wGpaNP~y3wSYiM#CU+7&bLXYG=wpN%Gi;m%m%IFml^W6u?8 W)(V9+QJC-AX0;MIy-ME6*#85#NdM^o diff --git a/efi64/com32/modules/sanboot.c32 b/efi64/com32/modules/sanboot.c32 dissimilarity index 97% index c19fbb954df91817a81a74a61c117262aedede83..2e7c4fb7327acc52d4d8519b991fe7a4b4a1a931 100755 GIT binary patch delta 598 zcwXBed_rh~g!%+#1~71dPz)Yy3~=DUV8Or)BzYLPC)z6-9$ zCVMirb0z>)2{3RlG)(@;C~gQd5C+^}vS{KKa9xT_;+!y_EuS38WHfm?lcOw%Hv{T; zkb9Vr^e&kEkx5)~1(GbX;Tt9^GK=%>K$2yfcu;tA0CNN*qxR&LEb@vDP{Uxsr@#oI zVSdh;{E|hUv0*YNt3J~Prpb=1@e?nw1NjSC#TDJ4E)9dyX;8WhO1DkE$=W3FN^-X~JYq u4s%X(sHe>*djfgzh@9LB;<3VbCpokyn{bLS9+>ROY0vovDjor}OCA6i^HmD~ delta 699 zcwRdpv_W`+g!%?%1~71dPz(iZ3~=DUV8Or)BzYNlCfX|+K466izhH$aPymxmKn&8g zfCVB7rzcKK*O|Z|AZftDV89L(-~wVEAXYi{;iXKwwU%mVN$IVN_m*VW&#JLi4EC6; z$g04~3^Z%QWJkt!#T=kg0R|4Zc`y(M6Q6vMQ9KY`)&++yMj#dfnGN;ua;UgA5Gw+m z2J;=uWJ@L^uHe+X6zBZ>?99~3nM}@%J0@>r5|=yxRRZ!0Gm_CKCO-tqUO1j}U+2oz9&CE%~#gnbr{3f@uDKpwkUdg5}2(tr5TTFfl6ot72 zMpsPMWY_1s0p;D8oXBp@82~joVDdsB4;FeGCO-u7!l7XtK3S2&oD&}JlM_KaRv2#~ shqf#S10u*^Aq}HBCck8tmkeQm#E}65DtIvYA%{ID4>Yi1fi9E>04jQ99smFU diff --git a/efi64/com32/rosh/rosh.c32 b/efi64/com32/rosh/rosh.c32 index 23714fd919a620abcf0119ce539730513352bc5a..78586891cde324dfe882dfe72f84c5e035809526 100755 GIT binary patch delta 3253 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 diff --git a/efi64/com32/samples/resolv.c32 b/efi64/com32/samples/resolv.c32 dissimilarity index 87% index 8b5abb78ebbc5e98ede59c6a80283466693b9203..8b3cbbed92b90629fbc3aec6a4552fa1927db38c 100755 GIT binary patch delta 638 zcwSvnuTR536uxVFZEt~PgKcdES!ehWL^st5l2sN#(g_p@rZzbQ3BlEnC79lxAjmmz zfWd&+f57w%NF)Z$b-ODaU()yWec$W5_u7tX_tnJSi8Qo8uq3o=pbPAC3l@l?oeIQ%=FsC=_DNyFGx;jp@X51Km)#qM{VL{nO|*&xCWQ`t6?J_+ GVf`0iO-|4N delta 728 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 delta 4253 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 SamG#zjI1iL3}mdiB>oS?5hf%6 delta 5700 zcwTi_3vg7`8NO#XArE%R?uO*%LNE_q@_?|}#E?Kt^B^Rf2ateT!sxhQO+zG-sMM5k zOemmWM3eke2dpg#RVPzB9pX-hs2wMDit*8A#jyl+1S)R-|J?t=Wes=c z-m~BLopbIv-#Pd0fBzSbiN{AoZ<4E5Rpe2o@KM#5y*#gBwGO&h8+59?TJW5MXKty^ zUM>6j+eAaZXfI&qYKM4~<5|JKSK(QSr_pm2o<4Y9JQPuqw!sIcDXT}k2+oMR#5(ARs1_lZ!Bz)gGU83G zw^HwElzSY&(}j1s4Td9CZSrQF-NS0K(A7Gaic~j0yjW+y6neSPqO0Y3I(BobeCC^( z-@-gip7^60_rv@=uAdCfIjWd|jyb9Z%XBS{>%`$bol3Oghe1>a7U=9si(bB=kZM;t zVRDYzb(~$Z@HnZU{s)=Qx?j+M*_SQLFU`| z?gPC4Mw$N#`84#co%dk`^DioTKToGh=u*z|upZ-%MxilUt@&5F&USONC%IX|A|1cO ztrD1jJ4we`T>p>E?}1_LZJcdA!RkBLndDraWF}AYM&>`^-uwY)jKwl{!#(%?WYzZV z_inxC0dURzzKg0D^N;2xsVntzD2#VA|6UlsGg~i>RW$gFTlBIejK78ZXZ%^C_*Ut{%X7=IcD?P}LqR!75B zXR%&Rgz<^YUkKw*E!9ioePi&M?9{<9-lOw*%0!rO(xaFDGQFf1FF*D2Xo0kODqNUn zvqzcOPH3E`YTc$bu_kpN>_WBIq!yXfgD{NhfJt?l)FGHc^{7c*Xj0q38K=5CdE3zT zH+Cl--6p;q><-m#HL34GN1O^ihfOOmvD0OGNwcehHf)n)QZK+Hwi&`Ub4+Y>`PDWa zIN?w=5#vY<8E4#dSh{=!V~&LMnZz!_v}uF662}s@5l)rZLYTI1&>``qC5Yz{R_OjA_jw{HED4_b zp77^{9nt}bKPK#y4oLhyVV873;!}jk+K;qX4CrAe*euZ$Nbf8NTFA43zwgm01#NL)eKEgg_}C1H9;bp^X6 zkw-*^bU@;4!kN+miPH&ZNe3ieKsZ}EAhC<^66t`%v4odO2PC!-&XEpCd4E;Vadkc#@7rH;0_~d~I*-EMQQ!W^aoC=&#(jv3 z@)6YQdvZzxU#8Eqh$6UrQPq%SAIf8ATf2hg7rR9s zq-4Ay9)`~{?hwULk$FZeg!HTvq7BYvsiFX)vzwy-r_zujzksdTi^RKu$FhGd#IxXD z>PhazN2z}Qx8Bj3(3{g|gE*msHDdhiKk^GXk7GBj%7I4Fs_ajwfrw=qeQ_fw(J?uk%vp^(ZBHi6fJ3FF*a)6f2UIZC%V=6YKziboU|j^*Hh4__gw+``J?F6*ZD#5Hhg$P#%g+by%4T1t0?vPy^3h$A^} zGO7!K8x#&p-}N+(R!6vkY*T}LiRtKE(Z+*hk=#uUtlRf)tQjiK6L4vem- zQ8pl3&>8Mw=d=5c|xrJY$XqZ|JqPmftFk=7v6^iwvluu!@UbQ5q!sqqNG=Es7-*Oi% z;9XNK+TrJT-3DW8Fi7Wb@OG|wnY-HwGiy{FV$52P_R$huJI{5Bg(gEw-`U0ibwOsz$$c^?|zCeN^X5}fN)T-2;})p+e#=dmcIaAe&wE!^c9 zLDL|2gIIMGybT^P1e+UFE&RKeOSj2V-3|mNQiWCok>V*#FY+9xb$1}WJ-9F z;u(vP?%CRS7w*C1cs&kT>zCX)Tav(Io&Ec~*sA9U!c$E(*4eWI>!D+VD(-;c^=enM zb@nt#H@6MXI6PtH#823!c$(|);rdO?zrg%${E20(+OV990>{=n@pXwK!4;rU{f&NW z?^#Ow*11rf7nOxzK(=RUHiH!YXd2_DH_ z9_KBjdMhKYNmD7?xa~UT!;?&#8madXo+h*- W@8}zw9~itn-D*xN1zvCZRQw+oSw*D) diff --git a/efi64/efi/syslinux.efi b/efi64/efi/syslinux.efi index d5d7ca97de6356a832a7c37e219a6308d7cd7f35..7775dd03092e99aaf71303118b4e0d7cc43cd864 100644 GIT binary patch delta 53556 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⪼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 ow#{fDhvE77F_7XYev?kP4+)j5Kmd3R!w&+l> 8)) + +#define PXE_SWAP_UINT32(n) \ +((((PXE_UINT32)(n) & 0x000000FF) << 24) | \ +(((PXE_UINT32)(n) & 0x0000FF00) << 8) | \ +(((PXE_UINT32)(n) & 0x00FF0000) >> 8) | \ +(((PXE_UINT32)(n) & 0xFF000000) >> 24)) + +#if PXE_UINT64_SUPPORT != 0 +#define PXE_SWAP_UINT64(n) \ +((((PXE_UINT64)(n) & 0x00000000000000FF) << 56) | \ +(((PXE_UINT64)(n) & 0x000000000000FF00) << 40) | \ +(((PXE_UINT64)(n) & 0x0000000000FF0000) << 24) | \ +(((PXE_UINT64)(n) & 0x00000000FF000000) << 8) | \ +(((PXE_UINT64)(n) & 0x000000FF00000000) >> 8) | \ +(((PXE_UINT64)(n) & 0x0000FF0000000000) >> 24) | \ +(((PXE_UINT64)(n) & 0x00FF000000000000) >> 40) | \ +(((PXE_UINT64)(n) & 0xFF00000000000000) >> 56)) +#endif // PXE_UINT64_SUPPORT + +#if PXE_NO_UINT64_SUPPORT != 0 +#define PXE_SWAP_UINT64(n) \ +{ \ +PXE_UINT32 tmp = (PXE_UINT64)(n)[1]; \ +(PXE_UINT64)(n)[1] = PXE_SWAP_UINT32((PXE_UINT64)(n)[0]); \ +(PXE_UINT64)(n)[0] = tmp; \ +} +#endif // PXE_NO_UINT64_SUPPORT + +#define PXE_CPBSIZE_NOT_USED 0 // zero +#define PXE_DBSIZE_NOT_USED 0 // zero +#define PXE_CPBADDR_NOT_USED (PXE_UINT64)0 // zero +#define PXE_DBADDR_NOT_USED (PXE_UINT64)0 // zero + +#define PXE_CONST const + +#define PXE_VOLATILE volatile + +typedef void PXE_VOID; + +typedef unsigned char PXE_UINT8; + +typedef unsigned short PXE_UINT16; + +typedef unsigned PXE_UINT32; + +#if PXE_UINT64_SUPPORT != 0 +// typedef unsigned long PXE_UINT64; +typedef UINT64 PXE_UINT64; +#endif // PXE_UINT64_SUPPORT + +#if PXE_NO_UINT64_SUPPORT != 0 +typedef PXE_UINT32 PXE_UINT64[2]; +#endif // PXE_NO_UINT64_SUPPORT + +typedef unsigned PXE_UINTN; + +typedef PXE_UINT8 PXE_BOOL; + +#define PXE_FALSE 0 // zero +#define PXE_TRUE (!PXE_FALSE) + +typedef PXE_UINT16 PXE_OPCODE; + +// +// Return UNDI operational state. +// +#define PXE_OPCODE_GET_STATE 0x0000 + +// +// Change UNDI operational state from Stopped to Started. +// +#define PXE_OPCODE_START 0x0001 + +// +// Change UNDI operational state from Started to Stopped. +// +#define PXE_OPCODE_STOP 0x0002 + +// +// Get UNDI initialization information. +// +#define PXE_OPCODE_GET_INIT_INFO 0x0003 + +// +// Get NIC configuration information. +// +#define PXE_OPCODE_GET_CONFIG_INFO 0x0004 + +// +// Changed UNDI operational state from Started to Initialized. +// +#define PXE_OPCODE_INITIALIZE 0x0005 + +// +// Re-initialize the NIC H/W. +// +#define PXE_OPCODE_RESET 0x0006 + +// +// Change the UNDI operational state from Initialized to Started. +// +#define PXE_OPCODE_SHUTDOWN 0x0007 + +// +// Read & change state of external interrupt enables. +// +#define PXE_OPCODE_INTERRUPT_ENABLES 0x0008 + +// +// Read & change state of packet receive filters. +// +#define PXE_OPCODE_RECEIVE_FILTERS 0x0009 + +// +// Read & change station MAC address. +// +#define PXE_OPCODE_STATION_ADDRESS 0x000A + +// +// Read traffic statistics. +// +#define PXE_OPCODE_STATISTICS 0x000B + +// +// Convert multicast IP address to multicast MAC address. +// +#define PXE_OPCODE_MCAST_IP_TO_MAC 0x000C + +// +// Read or change non-volatile storage on the NIC. +// +#define PXE_OPCODE_NVDATA 0x000D + +// +// Get & clear interrupt status. +// +#define PXE_OPCODE_GET_STATUS 0x000E + +// +// Fill media header in packet for transmit. +// +#define PXE_OPCODE_FILL_HEADER 0x000F + +// +// Transmit packet(s). +// +#define PXE_OPCODE_TRANSMIT 0x0010 + +// +// Receive packet. +// +#define PXE_OPCODE_RECEIVE 0x0011 + +// last valid opcode: +#define PXE_OPCODE_VALID_MAX 0x0011 + +// +// Last valid PXE UNDI OpCode number. +// +#define PXE_OPCODE_LAST_VALID 0x0011 + +typedef PXE_UINT16 PXE_OPFLAGS; + +#define PXE_OPFLAGS_NOT_USED 0x0000 + +//////////////////////////////////////// +// UNDI Get State +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Start +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Stop +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Get Init Info +// + +// No Opflags + +//////////////////////////////////////// +// UNDI Get Config Info +// + +// No Opflags + +//////////////////////////////////////// +// UNDI Initialize +// + +#define PXE_OPFLAGS_INITIALIZE_CABLE_DETECT_MASK 0x0001 +#define PXE_OPFLAGS_INITIALIZE_DETECT_CABLE 0x0000 +#define PXE_OPFLAGS_INITIALIZE_DO_NOT_DETECT_CABLE 0x0001 + +//////////////////////////////////////// +// UNDI Reset +// + +#define PXE_OPFLAGS_RESET_DISABLE_INTERRUPTS 0x0001 +#define PXE_OPFLAGS_RESET_DISABLE_FILTERS 0x0002 + +//////////////////////////////////////// +// UNDI Shutdown +// + +// No OpFlags + +//////////////////////////////////////// +// UNDI Interrupt Enables +// + +// +// Select whether to enable or disable external interrupt signals. +// Setting both enable and disable will return PXE_STATCODE_INVALID_OPFLAGS. +// +#define PXE_OPFLAGS_INTERRUPT_OPMASK 0xC000 +#define PXE_OPFLAGS_INTERRUPT_ENABLE 0x8000 +#define PXE_OPFLAGS_INTERRUPT_DISABLE 0x4000 +#define PXE_OPFLAGS_INTERRUPT_READ 0x0000 + +// +// Enable receive interrupts. An external interrupt will be generated +// after a complete non-error packet has been received. +// +#define PXE_OPFLAGS_INTERRUPT_RECEIVE 0x0001 + +// +// Enable transmit interrupts. An external interrupt will be generated +// after a complete non-error packet has been transmitted. +// +#define PXE_OPFLAGS_INTERRUPT_TRANSMIT 0x0002 + +// +// Enable command interrupts. An external interrupt will be generated +// when command execution stops. +// +#define PXE_OPFLAGS_INTERRUPT_COMMAND 0x0004 + +// +// Generate software interrupt. Setting this bit generates an external +// interrupt, if it is supported by the hardware. +// +#define PXE_OPFLAGS_INTERRUPT_SOFTWARE 0x0008 + +//////////////////////////////////////// +// UNDI Receive Filters +// + +// +// Select whether to enable or disable receive filters. +// Setting both enable and disable will return PXE_STATCODE_INVALID_OPCODE. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_OPMASK 0xC000 +#define PXE_OPFLAGS_RECEIVE_FILTER_ENABLE 0x8000 +#define PXE_OPFLAGS_RECEIVE_FILTER_DISABLE 0x4000 +#define PXE_OPFLAGS_RECEIVE_FILTER_READ 0x0000 + +// +// To reset the contents of the multicast MAC address filter list, +// set this OpFlag: +// +#define PXE_OPFLAGS_RECEIVE_FILTER_RESET_MCAST_LIST 0x2000 + +// +// Enable unicast packet receiving. Packets sent to the current station +// MAC address will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_UNICAST 0x0001 + +// +// Enable broadcast packet receiving. Packets sent to the broadcast +// MAC address will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_BROADCAST 0x0002 + +// +// Enable filtered multicast packet receiving. Packets sent to any +// of the multicast MAC addresses in the multicast MAC address filter +// list will be received. If the filter list is empty, no multicast +// +#define PXE_OPFLAGS_RECEIVE_FILTER_FILTERED_MULTICAST 0x0004 + +// +// Enable promiscuous packet receiving. All packets will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_PROMISCUOUS 0x0008 + +// +// Enable promiscuous multicast packet receiving. All multicast +// packets will be received. +// +#define PXE_OPFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010 + +//////////////////////////////////////// +// UNDI Station Address +// + +#define PXE_OPFLAGS_STATION_ADDRESS_READ 0x0000 +#define PXE_OPFLAGS_STATION_ADDRESS_RESET 0x0001 + +//////////////////////////////////////// +// UNDI Statistics +// + +#define PXE_OPFLAGS_STATISTICS_READ 0x0000 +#define PXE_OPFLAGS_STATISTICS_RESET 0x0001 + +//////////////////////////////////////// +// UNDI MCast IP to MAC +// + +// +// Identify the type of IP address in the CPB. +// +#define PXE_OPFLAGS_MCAST_IP_TO_MAC_OPMASK 0x0003 +#define PXE_OPFLAGS_MCAST_IPV4_TO_MAC 0x0000 +#define PXE_OPFLAGS_MCAST_IPV6_TO_MAC 0x0001 + +//////////////////////////////////////// +// UNDI NvData +// + +// +// Select the type of non-volatile data operation. +// +#define PXE_OPFLAGS_NVDATA_OPMASK 0x0001 +#define PXE_OPFLAGS_NVDATA_READ 0x0000 +#define PXE_OPFLAGS_NVDATA_WRITE 0x0001 + +//////////////////////////////////////// +// UNDI Get Status +// + +// +// Return current interrupt status. This will also clear any interrupts +// that are currently set. This can be used in a polling routine. The +// interrupt flags are still set and cleared even when the interrupts +// are disabled. +// +#define PXE_OPFLAGS_GET_INTERRUPT_STATUS 0x0001 + +// +// Return list of transmitted buffers for recycling. Transmit buffers +// must not be changed or unallocated until they have recycled. After +// issuing a transmit command, wait for a transmit complete interrupt. +// When a transmit complete interrupt is received, read the transmitted +// buffers. Do not plan on getting one buffer per interrupt. Some +// NICs and UNDIs may transmit multiple buffers per interrupt. +// +#define PXE_OPFLAGS_GET_TRANSMITTED_BUFFERS 0x0002 + +//////////////////////////////////////// +// UNDI Fill Header +// + +#define PXE_OPFLAGS_FILL_HEADER_OPMASK 0x0001 +#define PXE_OPFLAGS_FILL_HEADER_FRAGMENTED 0x0001 +#define PXE_OPFLAGS_FILL_HEADER_WHOLE 0x0000 + +//////////////////////////////////////// +// UNDI Transmit +// + +// +// S/W UNDI only. Return after the packet has been transmitted. A +// transmit complete interrupt will still be generated and the transmit +// buffer will have to be recycled. +// +#define PXE_OPFLAGS_SWUNDI_TRANSMIT_OPMASK 0x0001 +#define PXE_OPFLAGS_TRANSMIT_BLOCK 0x0001 +#define PXE_OPFLAGS_TRANSMIT_DONT_BLOCK 0x0000 + +// +// +// +#define PXE_OPFLAGS_TRANSMIT_OPMASK 0x0002 +#define PXE_OPFLAGS_TRANSMIT_FRAGMENTED 0x0002 +#define PXE_OPFLAGS_TRANSMIT_WHOLE 0x0000 + +//////////////////////////////////////// +// UNDI Receive +// + +// No OpFlags + +typedef PXE_UINT16 PXE_STATFLAGS; + +#define PXE_STATFLAGS_INITIALIZE 0x0000 + +//////////////////////////////////////// +// Common StatFlags that can be returned by all commands. +// + +// +// The COMMAND_COMPLETE and COMMAND_FAILED status flags must be +// implemented by all UNDIs. COMMAND_QUEUED is only needed by UNDIs +// that support command queuing. +// +#define PXE_STATFLAGS_STATUS_MASK 0xC000 +#define PXE_STATFLAGS_COMMAND_COMPLETE 0xC000 +#define PXE_STATFLAGS_COMMAND_FAILED 0x8000 +#define PXE_STATFLAGS_COMMAND_QUEUED 0x4000 +//#define PXE_STATFLAGS_INITIALIZE 0x0000 + +#define PXE_STATFLAGS_DB_WRITE_TRUNCATED 0x2000 + +//////////////////////////////////////// +// UNDI Get State +// + +#define PXE_STATFLAGS_GET_STATE_MASK 0x0003 +#define PXE_STATFLAGS_GET_STATE_INITIALIZED 0x0002 +#define PXE_STATFLAGS_GET_STATE_STARTED 0x0001 +#define PXE_STATFLAGS_GET_STATE_STOPPED 0x0000 + +//////////////////////////////////////// +// UNDI Start +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Get Init Info +// + +#define PXE_STATFLAGS_CABLE_DETECT_MASK 0x0001 +#define PXE_STATFLAGS_CABLE_DETECT_NOT_SUPPORTED 0x0000 +#define PXE_STATFLAGS_CABLE_DETECT_SUPPORTED 0x0001 + + +//////////////////////////////////////// +// UNDI Initialize +// + +#define PXE_STATFLAGS_INITIALIZED_NO_MEDIA 0x0001 + +//////////////////////////////////////// +// UNDI Reset +// + +#define PXE_STATFLAGS_RESET_NO_MEDIA 0x0001 + +//////////////////////////////////////// +// UNDI Shutdown +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Interrupt Enables +// + +// +// If set, receive interrupts are enabled. +// +#define PXE_STATFLAGS_INTERRUPT_RECEIVE 0x0001 + +// +// If set, transmit interrupts are enabled. +// +#define PXE_STATFLAGS_INTERRUPT_TRANSMIT 0x0002 + +// +// If set, command interrupts are enabled. +// +#define PXE_STATFLAGS_INTERRUPT_COMMAND 0x0004 + + +//////////////////////////////////////// +// UNDI Receive Filters +// + +// +// If set, unicast packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_UNICAST 0x0001 + +// +// If set, broadcast packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_BROADCAST 0x0002 + +// +// If set, multicast packets that match up with the multicast address +// filter list will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_FILTERED_MULTICAST 0x0004 + +// +// If set, all packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_PROMISCUOUS 0x0008 + +// +// If set, all multicast packets will be received. +// +#define PXE_STATFLAGS_RECEIVE_FILTER_ALL_MULTICAST 0x0010 + +//////////////////////////////////////// +// UNDI Station Address +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Statistics +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI MCast IP to MAC +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI NvData +// + +// No additional StatFlags + + +//////////////////////////////////////// +// UNDI Get Status +// + +// +// Use to determine if an interrupt has occurred. +// +#define PXE_STATFLAGS_GET_STATUS_INTERRUPT_MASK 0x000F +#define PXE_STATFLAGS_GET_STATUS_NO_INTERRUPTS 0x0000 + +// +// If set, at least one receive interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_RECEIVE 0x0001 + +// +// If set, at least one transmit interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_TRANSMIT 0x0002 + +// +// If set, at least one command interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_COMMAND 0x0004 + +// +// If set, at least one software interrupt occurred. +// +#define PXE_STATFLAGS_GET_STATUS_SOFTWARE 0x0008 + +// +// This flag is set if the transmitted buffer queue is empty. This flag +// will be set if all transmitted buffer addresses get written into the DB. +// +#define PXE_STATFLAGS_GET_STATUS_TXBUF_QUEUE_EMPTY 0x0010 + +// +// This flag is set if no transmitted buffer addresses were written +// into the DB. (This could be because DBsize was too small.) +// +#define PXE_STATFLAGS_GET_STATUS_NO_TXBUFS_WRITTEN 0x0020 + +//////////////////////////////////////// +// UNDI Fill Header +// + +// No additional StatFlags + +//////////////////////////////////////// +// UNDI Transmit +// + +// No additional StatFlags. + +//////////////////////////////////////// +// UNDI Receive +// + +// No additional StatFlags. + +typedef PXE_UINT16 PXE_STATCODE; + +#define PXE_STATCODE_INITIALIZE 0x0000 + +//////////////////////////////////////// +// Common StatCodes returned by all UNDI commands, UNDI protocol functions +// and BC protocol functions. +// + +#define PXE_STATCODE_SUCCESS 0x0000 + +#define PXE_STATCODE_INVALID_CDB 0x0001 +#define PXE_STATCODE_INVALID_CPB 0x0002 +#define PXE_STATCODE_BUSY 0x0003 +#define PXE_STATCODE_QUEUE_FULL 0x0004 +#define PXE_STATCODE_ALREADY_STARTED 0x0005 +#define PXE_STATCODE_NOT_STARTED 0x0006 +#define PXE_STATCODE_NOT_SHUTDOWN 0x0007 +#define PXE_STATCODE_ALREADY_INITIALIZED 0x0008 +#define PXE_STATCODE_NOT_INITIALIZED 0x0009 +#define PXE_STATCODE_DEVICE_FAILURE 0x000A +#define PXE_STATCODE_NVDATA_FAILURE 0x000B +#define PXE_STATCODE_UNSUPPORTED 0x000C +#define PXE_STATCODE_BUFFER_FULL 0x000D +#define PXE_STATCODE_INVALID_PARAMETER 0x000E +#define PXE_STATCODE_INVALID_UNDI 0x000F +#define PXE_STATCODE_IPV4_NOT_SUPPORTED 0x0010 +#define PXE_STATCODE_IPV6_NOT_SUPPORTED 0x0011 +#define PXE_STATCODE_NOT_ENOUGH_MEMORY 0x0012 +#define PXE_STATCODE_NO_DATA 0x0013 + + +typedef PXE_UINT16 PXE_IFNUM; + +// +// This interface number must be passed to the S/W UNDI Start command. +// +#define PXE_IFNUM_START 0x0000 + +// +// This interface number is returned by the S/W UNDI Get State and +// Start commands if information in the CDB, CPB or DB is invalid. +// +#define PXE_IFNUM_INVALID 0x0000 + +typedef PXE_UINT16 PXE_CONTROL; + +// +// Setting this flag directs the UNDI to queue this command for later +// execution if the UNDI is busy and it supports command queuing. +// If queuing is not supported, a PXE_STATCODE_INVALID_CONTROL error +// is returned. If the queue is full, a PXE_STATCODE_CDB_QUEUE_FULL +// error is returned. +// +#define PXE_CONTROL_QUEUE_IF_BUSY 0x0002 + +// +// These two bit values are used to determine if there are more UNDI +// CDB structures following this one. If the link bit is set, there +// must be a CDB structure following this one. Execution will start +// on the next CDB structure as soon as this one completes successfully. +// If an error is generated by this command, execution will stop. +// +#define PXE_CONTROL_LINK 0x0001 +#define PXE_CONTROL_LAST_CDB_IN_LIST 0x0000 + +typedef PXE_UINT8 PXE_FRAME_TYPE; + +#define PXE_FRAME_TYPE_NONE 0x00 +#define PXE_FRAME_TYPE_UNICAST 0x01 +#define PXE_FRAME_TYPE_BROADCAST 0x02 +#define PXE_FRAME_TYPE_MULTICAST 0x03 +#define PXE_FRAME_TYPE_PROMISCUOUS 0x04 + +typedef PXE_UINT32 PXE_IPV4; + +typedef PXE_UINT32 PXE_IPV6[4]; +#define PXE_MAC_LENGTH 32 + +typedef PXE_UINT8 PXE_MAC_ADDR[PXE_MAC_LENGTH]; + +typedef PXE_UINT8 PXE_IFTYPE; +typedef PXE_UINT16 PXE_MEDIA_PROTOCOL; + +// +// This information is from the ARP section of RFC 1700. +// +// 1 Ethernet (10Mb) [JBP] +// 2 Experimental Ethernet (3Mb) [JBP] +// 3 Amateur Radio AX.25 [PXK] +// 4 Proteon ProNET Token Ring [JBP] +// 5 Chaos [GXP] +// 6 IEEE 802 Networks [JBP] +// 7 ARCNET [JBP] +// 8 Hyperchannel [JBP] +// 9 Lanstar [TU] +// 10 Autonet Short Address [MXB1] +// 11 LocalTalk [JKR1] +// 12 LocalNet (IBM PCNet or SYTEK LocalNET) [JXM] +// 13 Ultra link [RXD2] +// 14 SMDS [GXC1] +// 15 Frame Relay [AGM] +// 16 Asynchronous Transmission Mode (ATM) [JXB2] +// 17 HDLC [JBP] +// 18 Fibre Channel [Yakov Rekhter] +// 19 Asynchronous Transmission Mode (ATM) [Mark Laubach] +// 20 Serial Line [JBP] +// 21 Asynchronous Transmission Mode (ATM) [MXB1] +// + +#define PXE_IFTYPE_ETHERNET 0x01 +#define PXE_IFTYPE_TOKENRING 0x04 +#define PXE_IFTYPE_FIBRE_CHANNEL 0x12 + +typedef struct s_pxe_hw_undi { +PXE_UINT32 Signature; // PXE_ROMID_SIGNATURE +PXE_UINT8 Len; // sizeof(PXE_HW_UNDI) +PXE_UINT8 Fudge; // makes 8-bit cksum equal zero +PXE_UINT8 Rev; // PXE_ROMID_REV +PXE_UINT8 IFcnt; // physical connector count +PXE_UINT8 MajorVer; // PXE_ROMID_MAJORVER +PXE_UINT8 MinorVer; // PXE_ROMID_MINORVER +PXE_UINT16 reserved; // zero, not used +PXE_UINT32 Implementation; // implementation flags +// reserved // vendor use +// PXE_UINT32 Status; // status port +// PXE_UINT32 Command; // command port +// PXE_UINT64 CDBaddr; // CDB address port +} PXE_HW_UNDI; + +// +// Status port bit definitions +// + +// +// UNDI operation state +// +#define PXE_HWSTAT_STATE_MASK 0xC0000000 +#define PXE_HWSTAT_BUSY 0xC0000000 +#define PXE_HWSTAT_INITIALIZED 0x80000000 +#define PXE_HWSTAT_STARTED 0x40000000 +#define PXE_HWSTAT_STOPPED 0x00000000 + +// +// If set, last command failed +// +#define PXE_HWSTAT_COMMAND_FAILED 0x20000000 + +// +// If set, identifies enabled receive filters +// +#define PXE_HWSTAT_PROMISCUOUS_MULTICAST_RX_ENABLED 0x00001000 +#define PXE_HWSTAT_PROMISCUOUS_RX_ENABLED 0x00000800 +#define PXE_HWSTAT_BROADCAST_RX_ENABLED 0x00000400 +#define PXE_HWSTAT_MULTICAST_RX_ENABLED 0x00000200 +#define PXE_HWSTAT_UNICAST_RX_ENABLED 0x00000100 + +// +// If set, identifies enabled external interrupts +// +#define PXE_HWSTAT_SOFTWARE_INT_ENABLED 0x00000080 +#define PXE_HWSTAT_TX_COMPLETE_INT_ENABLED 0x00000040 +#define PXE_HWSTAT_PACKET_RX_INT_ENABLED 0x00000020 +#define PXE_HWSTAT_CMD_COMPLETE_INT_ENABLED 0x00000010 + +// +// If set, identifies pending interrupts +// +#define PXE_HWSTAT_SOFTWARE_INT_PENDING 0x00000008 +#define PXE_HWSTAT_TX_COMPLETE_INT_PENDING 0x00000004 +#define PXE_HWSTAT_PACKET_RX_INT_PENDING 0x00000002 +#define PXE_HWSTAT_CMD_COMPLETE_INT_PENDING 0x00000001 + +// +// Command port definitions +// + +// +// If set, CDB identified in CDBaddr port is given to UNDI. +// If not set, other bits in this word will be processed. +// +#define PXE_HWCMD_ISSUE_COMMAND 0x80000000 +#define PXE_HWCMD_INTS_AND_FILTS 0x00000000 + +// +// Use these to enable/disable receive filters. +// +#define PXE_HWCMD_PROMISCUOUS_MULTICAST_RX_ENABLE 0x00001000 +#define PXE_HWCMD_PROMISCUOUS_RX_ENABLE 0x00000800 +#define PXE_HWCMD_BROADCAST_RX_ENABLE 0x00000400 +#define PXE_HWCMD_MULTICAST_RX_ENABLE 0x00000200 +#define PXE_HWCMD_UNICAST_RX_ENABLE 0x00000100 + +// +// Use these to enable/disable external interrupts +// +#define PXE_HWCMD_SOFTWARE_INT_ENABLE 0x00000080 +#define PXE_HWCMD_TX_COMPLETE_INT_ENABLE 0x00000040 +#define PXE_HWCMD_PACKET_RX_INT_ENABLE 0x00000020 +#define PXE_HWCMD_CMD_COMPLETE_INT_ENABLE 0x00000010 + +// +// Use these to clear pending external interrupts +// +#define PXE_HWCMD_CLEAR_SOFTWARE_INT 0x00000008 +#define PXE_HWCMD_CLEAR_TX_COMPLETE_INT 0x00000004 +#define PXE_HWCMD_CLEAR_PACKET_RX_INT 0x00000002 +#define PXE_HWCMD_CLEAR_CMD_COMPLETE_INT 0x00000001 + +typedef struct s_pxe_sw_undi { +PXE_UINT32 Signature; // PXE_ROMID_SIGNATURE +PXE_UINT8 Len; // sizeof(PXE_SW_UNDI) +PXE_UINT8 Fudge; // makes 8-bit cksum zero +PXE_UINT8 Rev; // PXE_ROMID_REV +PXE_UINT8 IFcnt; // physical connector count +PXE_UINT8 MajorVer; // PXE_ROMID_MAJORVER +PXE_UINT8 MinorVer; // PXE_ROMID_MINORVER +PXE_UINT16 reserved1; // zero, not used +PXE_UINT32 Implementation; // Implementation flags +PXE_UINT64 EntryPoint; // API entry point +PXE_UINT8 reserved2[3]; // zero, not used +PXE_UINT8 BusCnt; // number of bustypes supported +PXE_UINT32 BusType[1]; // list of supported bustypes +} PXE_SW_UNDI; + +typedef union u_pxe_undi { +PXE_HW_UNDI hw; +PXE_SW_UNDI sw; +} PXE_UNDI; + +// +// Signature of !PXE structure +// +#define PXE_ROMID_SIGNATURE PXE_BUSTYPE('!', 'P', 'X', 'E') + +// +// !PXE structure format revision +// +#define PXE_ROMID_REV 0x02 + +// +// UNDI command interface revision. These are the values that get sent +// in option 94 (Client Network Interface Identifier) in the DHCP Discover +// and PXE Boot Server Request packets. +// +#define PXE_ROMID_MAJORVER 0x03 +#define PXE_ROMID_MINORVER 0x00 + +// +// Implementation flags +// +#define PXE_ROMID_IMP_HW_UNDI 0x80000000 +#define PXE_ROMID_IMP_SW_VIRT_ADDR 0x40000000 +#define PXE_ROMID_IMP_64BIT_DEVICE 0x00010000 +#define PXE_ROMID_IMP_FRAG_SUPPORTED 0x00008000 +#define PXE_ROMID_IMP_CMD_LINK_SUPPORTED 0x00004000 +#define PXE_ROMID_IMP_CMD_QUEUE_SUPPORTED 0x00002000 +#define PXE_ROMID_IMP_MULTI_FRAME_SUPPORTED 0x00001000 +#define PXE_ROMID_IMP_NVDATA_SUPPORT_MASK 0x00000C00 +#define PXE_ROMID_IMP_NVDATA_BULK_WRITABLE 0x00000C00 +#define PXE_ROMID_IMP_NVDATA_SPARSE_WRITABLE 0x00000800 +#define PXE_ROMID_IMP_NVDATA_READ_ONLY 0x00000400 +#define PXE_ROMID_IMP_NVDATA_NOT_AVAILABLE 0x00000000 +#define PXE_ROMID_IMP_STATISTICS_SUPPORTED 0x00000200 +#define PXE_ROMID_IMP_STATION_ADDR_SETTABLE 0x00000100 +#define PXE_ROMID_IMP_PROMISCUOUS_MULTICAST_RX_SUPPORTED 0x00000080 +#define PXE_ROMID_IMP_PROMISCUOUS_RX_SUPPORTED 0x00000040 +#define PXE_ROMID_IMP_BROADCAST_RX_SUPPORTED 0x00000020 +#define PXE_ROMID_IMP_FILTERED_MULTICAST_RX_SUPPORTED 0x00000010 +#define PXE_ROMID_IMP_SOFTWARE_INT_SUPPORTED 0x00000008 +#define PXE_ROMID_IMP_TX_COMPLETE_INT_SUPPORTED 0x00000004 +#define PXE_ROMID_IMP_PACKET_RX_INT_SUPPORTED 0x00000002 +#define PXE_ROMID_IMP_CMD_COMPLETE_INT_SUPPORTED 0x00000001 + + +typedef struct s_pxe_cdb { +PXE_OPCODE OpCode; +PXE_OPFLAGS OpFlags; +PXE_UINT16 CPBsize; +PXE_UINT16 DBsize; +UINT64 CPBaddr; +UINT64 DBaddr; +PXE_STATCODE StatCode; +PXE_STATFLAGS StatFlags; +PXE_UINT16 IFnum; +PXE_CONTROL Control; +} PXE_CDB; + + +typedef union u_pxe_ip_addr { +PXE_IPV6 IPv6; +PXE_IPV4 IPv4; +} PXE_IP_ADDR; + +typedef union pxe_device { +// +// PCI and PC Card NICs are both identified using bus, device +// and function numbers. For PC Card, this may require PC +// Card services to be loaded in the BIOS or preboot +// environment. +// +struct { +// +// See S/W UNDI ROMID structure definition for PCI and +// PCC BusType definitions. +// +PXE_UINT32 BusType; + +// +// Bus, device & function numbers that locate this device. +// +PXE_UINT16 Bus; +PXE_UINT8 Device; +PXE_UINT8 Function; +} PCI, PCC; + +// +// %%TBD - More information is needed about enumerating +// USB and 1394 devices. +// +struct { +PXE_UINT32 BusType; +PXE_UINT32 tdb; +} USB, _1394; +} PXE_DEVICE; + +// cpb and db definitions + +#define MAX_PCI_CONFIG_LEN 64 // # of dwords +#define MAX_EEPROM_LEN 128 // #of dwords +#define MAX_XMIT_BUFFERS 32 // recycling Q length for xmit_done +#define MAX_MCAST_ADDRESS_CNT 8 + +typedef struct s_pxe_cpb_start { + // + // PXE_VOID Delay(PXE_UINT64 microseconds); + // + // UNDI will never request a delay smaller than 10 microseconds + // and will always request delays in increments of 10 microseconds. + // The Delay() CallBack routine must delay between n and n + 10 + // microseconds before returning control to the UNDI. + // + // This field cannot be set to zero. + // + PXE_UINT64 Delay; + + // + // PXE_VOID Block(PXE_UINT32 enable); + // + // UNDI may need to block multi-threaded/multi-processor access to + // critical code sections when programming or accessing the network + // device. To this end, a blocking service is needed by the UNDI. + // When UNDI needs a block, it will call Block() passing a non-zero + // value. When UNDI no longer needs a block, it will call Block() + // with a zero value. When called, if the Block() is already enabled, + // do not return control to the UNDI until the previous Block() is + // disabled. + // + // This field cannot be set to zero. + // + PXE_UINT64 Block; + + // + // PXE_VOID Virt2Phys(PXE_UINT64 virtual, PXE_UINT64 physical_ptr); + // + // UNDI will pass the virtual address of a buffer and the virtual + // address of a 64-bit physical buffer. Convert the virtual address + // to a physical address and write the result to the physical address + // buffer. If virtual and physical addresses are the same, just + // copy the virtual address to the physical address buffer. + // + // This field can be set to zero if virtual and physical addresses + // are equal. + // + PXE_UINT64 Virt2Phys; + // + // PXE_VOID Mem_IO(PXE_UINT8 read_write, PXE_UINT8 len, PXE_UINT64 port, + // PXE_UINT64 buf_addr); + // + // UNDI will read or write the device io space using this call back + // function. It passes the number of bytes as the len parameter and it + // will be either 1,2,4 or 8. + // + // This field can not be set to zero. + // + PXE_UINT64 Mem_IO; +} PXE_CPB_START; + +#define PXE_DELAY_MILLISECOND 1000 +#define PXE_DELAY_SECOND 1000000 +#define PXE_IO_READ 0 +#define PXE_IO_WRITE 1 +#define PXE_MEM_READ 2 +#define PXE_MEM_WRITE 4 + + +typedef struct s_pxe_db_get_init_info { + // + // Minimum length of locked memory buffer that must be given to + // the Initialize command. Giving UNDI more memory will generally + // give better performance. + // + // If MemoryRequired is zero, the UNDI does not need and will not + // use system memory to receive and transmit packets. + // + PXE_UINT32 MemoryRequired; + + // + // Maximum frame data length for Tx/Rx excluding the media header. + // + PXE_UINT32 FrameDataLen; + + // + // Supported link speeds are in units of mega bits. Common ethernet + // values are 10, 100 and 1000. Unused LinkSpeeds[] entries are zero + // filled. + // + PXE_UINT32 LinkSpeeds[4]; + + // + // Number of non-volatile storage items. + // + PXE_UINT32 NvCount; + + // + // Width of non-volatile storage item in bytes. 0, 1, 2 or 4 + // + PXE_UINT16 NvWidth; + + // + // Media header length. This is the typical media header length for + // this UNDI. This information is needed when allocating receive + // and transmit buffers. + // + PXE_UINT16 MediaHeaderLen; + + // + // Number of bytes in the NIC hardware (MAC) address. + // + PXE_UINT16 HWaddrLen; + + // + // Maximum number of multicast MAC addresses in the multicast + // MAC address filter list. + // + PXE_UINT16 MCastFilterCnt; + + // + // Default number and size of transmit and receive buffers that will + // be allocated by the UNDI. If MemoryRequired is non-zero, this + // allocation will come out of the memory buffer given to the Initialize + // command. If MemoryRequired is zero, this allocation will come out of + // memory on the NIC. + // + PXE_UINT16 TxBufCnt; + PXE_UINT16 TxBufSize; + PXE_UINT16 RxBufCnt; + PXE_UINT16 RxBufSize; + + // + // Hardware interface types defined in the Assigned Numbers RFC + // and used in DHCP and ARP packets. + // See the PXE_IFTYPE typedef and PXE_IFTYPE_xxx macros. + // + PXE_UINT8 IFtype; + + // + // Supported duplex. See PXE_DUPLEX_xxxxx #defines below. + // + PXE_UINT8 Duplex; + + // + // Supported loopback options. See PXE_LOOPBACK_xxxxx #defines below. + // + PXE_UINT8 LoopBack; +} PXE_DB_GET_INIT_INFO; + +#define PXE_MAX_TXRX_UNIT_ETHER 1500 + +#define PXE_HWADDR_LEN_ETHER 0x0006 +#define PXE_MAC_HEADER_LEN_ETHER 0x000E + +#define PXE_DUPLEX_ENABLE_FULL_SUPPORTED 1 +#define PXE_DUPLEX_FORCE_FULL_SUPPORTED 2 + +#define PXE_LOOPBACK_INTERNAL_SUPPORTED 1 +#define PXE_LOOPBACK_EXTERNAL_SUPPORTED 2 + + +typedef struct s_pxe_pci_config_info { + // + // This is the flag field for the PXE_DB_GET_CONFIG_INFO union. + // For PCI bus devices, this field is set to PXE_BUSTYPE_PCI. + // + PXE_UINT32 BusType; + + // + // This identifies the PCI network device that this UNDI interface + // is bound to. + // + PXE_UINT16 Bus; + PXE_UINT8 Device; + PXE_UINT8 Function; + + // + // This is a copy of the PCI configuration space for this + // network device. + // + union { + PXE_UINT8 Byte[256]; + PXE_UINT16 Word[128]; + PXE_UINT32 Dword[64]; + } Config; +} PXE_PCI_CONFIG_INFO; + + +typedef struct s_pxe_pcc_config_info { + // + // This is the flag field for the PXE_DB_GET_CONFIG_INFO union. + // For PCC bus devices, this field is set to PXE_BUSTYPE_PCC. + // + PXE_UINT32 BusType; + + // + // This identifies the PCC network device that this UNDI interface + // is bound to. + // + PXE_UINT16 Bus; + PXE_UINT8 Device; + PXE_UINT8 Function; + + // + // This is a copy of the PCC configuration space for this + // network device. + // + union { + PXE_UINT8 Byte[256]; + PXE_UINT16 Word[128]; + PXE_UINT32 Dword[64]; + } Config; +} PXE_PCC_CONFIG_INFO; + + +typedef struct s_pxe_usb_config_info { + PXE_UINT32 BusType; + // %%TBD What should we return here... +} PXE_USB_CONFIG_INFO; + + +typedef struct s_pxe_1394_config_info { + PXE_UINT32 BusType; + // %%TBD What should we return here... +} PXE_1394_CONFIG_INFO; + + +typedef union u_pxe_db_get_config_info { + PXE_PCI_CONFIG_INFO pci; + PXE_PCC_CONFIG_INFO pcc; + PXE_USB_CONFIG_INFO usb; + PXE_1394_CONFIG_INFO _1394; +} PXE_DB_GET_CONFIG_INFO; + + +typedef struct s_pxe_cpb_initialize { + // + // Address of first (lowest) byte of the memory buffer. This buffer must + // be in contiguous physical memory and cannot be swapped out. The UNDI + // will be using this for transmit and receive buffering. + // + PXE_UINT64 MemoryAddr; + + // + // MemoryLength must be greater than or equal to MemoryRequired + // returned by the Get Init Info command. + // + PXE_UINT32 MemoryLength; + + // + // Desired link speed in Mbit/sec. Common ethernet values are 10, 100 + // and 1000. Setting a value of zero will auto-detect and/or use the + // default link speed (operation depends on UNDI/NIC functionality). + // + PXE_UINT32 LinkSpeed; + + // + // Suggested number and size of receive and transmit buffers to + // allocate. If MemoryAddr and MemoryLength are non-zero, this + // allocation comes out of the supplied memory buffer. If MemoryAddr + // and MemoryLength are zero, this allocation comes out of memory + // on the NIC. + // + // If these fields are set to zero, the UNDI will allocate buffer + // counts and sizes as it sees fit. + // + PXE_UINT16 TxBufCnt; + PXE_UINT16 TxBufSize; + PXE_UINT16 RxBufCnt; + PXE_UINT16 RxBufSize; + + // + // The following configuration parameters are optional and must be zero + // to use the default values. + // + PXE_UINT8 Duplex; + + PXE_UINT8 LoopBack; +} PXE_CPB_INITIALIZE; + + +#define PXE_DUPLEX_DEFAULT 0x00 +#define PXE_FORCE_FULL_DUPLEX 0x01 +#define PXE_ENABLE_FULL_DUPLEX 0x02 + +#define LOOPBACK_NORMAL 0 +#define LOOPBACK_INTERNAL 1 +#define LOOPBACK_EXTERNAL 2 + + +typedef struct s_pxe_db_initialize { + // + // Actual amount of memory used from the supplied memory buffer. This + // may be less that the amount of memory suppllied and may be zero if + // the UNDI and network device do not use external memory buffers. + // + // Memory used by the UNDI and network device is allocated from the + // lowest memory buffer address. + // + PXE_UINT32 MemoryUsed; + + // + // Actual number and size of receive and transmit buffers that were + // allocated. + // + PXE_UINT16 TxBufCnt; + PXE_UINT16 TxBufSize; + PXE_UINT16 RxBufCnt; + PXE_UINT16 RxBufSize; +} PXE_DB_INITIALIZE; + + +typedef struct s_pxe_cpb_receive_filters { + // + // List of multicast MAC addresses. This list, if present, will + // replace the existing multicast MAC address filter list. + // + PXE_MAC_ADDR MCastList[MAX_MCAST_ADDRESS_CNT]; +} PXE_CPB_RECEIVE_FILTERS; + + +typedef struct s_pxe_db_receive_filters { + // + // Filtered multicast MAC address list. + // + PXE_MAC_ADDR MCastList[MAX_MCAST_ADDRESS_CNT]; +} PXE_DB_RECEIVE_FILTERS; + + +typedef struct s_pxe_cpb_station_address { + // + // If supplied and supported, the current station MAC address + // will be changed. + // + PXE_MAC_ADDR StationAddr; +} PXE_CPB_STATION_ADDRESS; + + +typedef struct s_pxe_dpb_station_address { + // + // Current station MAC address. + // + PXE_MAC_ADDR StationAddr; + + // + // Station broadcast MAC address. + // + PXE_MAC_ADDR BroadcastAddr; + + // + // Permanent station MAC address. + // + PXE_MAC_ADDR PermanentAddr; +} PXE_DB_STATION_ADDRESS; + + +typedef struct s_pxe_db_statistics { + // + // Bit field identifying what statistic data is collected by the + // UNDI/NIC. + // If bit 0x00 is set, Data[0x00] is collected. + // If bit 0x01 is set, Data[0x01] is collected. + // If bit 0x20 is set, Data[0x20] is collected. + // If bit 0x21 is set, Data[0x21] is collected. + // Etc. + // + PXE_UINT64 Supported; + + // + // Statistic data. + // + PXE_UINT64 Data[64]; +} PXE_DB_STATISTICS; + +// +// Total number of frames received. Includes frames with errors and +// dropped frames. +// +#define PXE_STATISTICS_RX_TOTAL_FRAMES 0x00 + +// +// Number of valid frames received and copied into receive buffers. +// +#define PXE_STATISTICS_RX_GOOD_FRAMES 0x01 + +// +// Number of frames below the minimum length for the media. +// This would be <64 for ethernet. +// +#define PXE_STATISTICS_RX_UNDERSIZE_FRAMES 0x02 + +// +// Number of frames longer than the maxminum length for the +// media. This would be >1500 for ethernet. +// +#define PXE_STATISTICS_RX_OVERSIZE_FRAMES 0x03 + +// +// Valid frames that were dropped because receive buffers were full. +// +#define PXE_STATISTICS_RX_DROPPED_FRAMES 0x04 + +// +// Number of valid unicast frames received and not dropped. +// +#define PXE_STATISTICS_RX_UNICAST_FRAMES 0x05 + +// +// Number of valid broadcast frames received and not dropped. +// +#define PXE_STATISTICS_RX_BROADCAST_FRAMES 0x06 + +// +// Number of valid mutlicast frames received and not dropped. +// +#define PXE_STATISTICS_RX_MULTICAST_FRAMES 0x07 + +// +// Number of frames w/ CRC or alignment errors. +// +#define PXE_STATISTICS_RX_CRC_ERROR_FRAMES 0x08 + +// +// Total number of bytes received. Includes frames with errors +// and dropped frames. +// +#define PXE_STATISTICS_RX_TOTAL_BYTES 0x09 + +// +// Transmit statistics. +// +#define PXE_STATISTICS_TX_TOTAL_FRAMES 0x0A +#define PXE_STATISTICS_TX_GOOD_FRAMES 0x0B +#define PXE_STATISTICS_TX_UNDERSIZE_FRAMES 0x0C +#define PXE_STATISTICS_TX_OVERSIZE_FRAMES 0x0D +#define PXE_STATISTICS_TX_DROPPED_FRAMES 0x0E +#define PXE_STATISTICS_TX_UNICAST_FRAMES 0x0F +#define PXE_STATISTICS_TX_BROADCAST_FRAMES 0x10 +#define PXE_STATISTICS_TX_MULTICAST_FRAMES 0x11 +#define PXE_STATISTICS_TX_CRC_ERROR_FRAMES 0x12 +#define PXE_STATISTICS_TX_TOTAL_BYTES 0x13 + +// +// Number of collisions detection on this subnet. +// +#define PXE_STATISTICS_COLLISIONS 0x14 + +// +// Number of frames destined for unsupported protocol. +// +#define PXE_STATISTICS_UNSUPPORTED_PROTOCOL 0x15 + + +typedef struct s_pxe_cpb_mcast_ip_to_mac { + // + // Multicast IP address to be converted to multicast MAC address. + // + PXE_IP_ADDR IP; +} PXE_CPB_MCAST_IP_TO_MAC; + + +typedef struct s_pxe_db_mcast_ip_to_mac { + // + // Multicast MAC address. + // + PXE_MAC_ADDR MAC; +} PXE_DB_MCAST_IP_TO_MAC; + + +typedef struct s_pxe_cpb_nvdata_sparse { + // + // NvData item list. Only items in this list will be updated. + // + struct { + // Non-volatile storage address to be changed. + PXE_UINT32 Addr; + + // Data item to write into above storage address. + + union { + PXE_UINT8 Byte; + PXE_UINT16 Word; + PXE_UINT32 Dword; + } Data; + } Item[MAX_EEPROM_LEN]; +} PXE_CPB_NVDATA_SPARSE; + + +// +// When using bulk update, the size of the CPB structure must be +// the same size as the non-volatile NIC storage. +// +typedef union u_pxe_cpb_nvdata_bulk { + // + // Array of byte-wide data items. + // + PXE_UINT8 Byte[MAX_EEPROM_LEN << 2]; + + // + // Array of word-wide data items. + // + PXE_UINT16 Word[MAX_EEPROM_LEN << 1]; + + // + // Array of dword-wide data items. + // + PXE_UINT32 Dword[MAX_EEPROM_LEN]; +} PXE_CPB_NVDATA_BULK; + +typedef struct s_pxe_db_nvdata { + + // Arrays of data items from non-volatile storage. + + union { + // + // Array of byte-wide data items. + // + PXE_UINT8 Byte[MAX_EEPROM_LEN << 2]; + + // + // Array of word-wide data items. + // + PXE_UINT16 Word[MAX_EEPROM_LEN << 1]; + + // Array of dword-wide data items. + + PXE_UINT32 Dword[MAX_EEPROM_LEN]; + } Data; +} PXE_DB_NVDATA; + + +typedef struct s_pxe_db_get_status { + // + // Length of next receive frame (header + data). If this is zero, + // there is no next receive frame available. + // + PXE_UINT32 RxFrameLen; + + // + // Reserved, set to zero. + // + PXE_UINT32 reserved; + + // + // Addresses of transmitted buffers that need to be recycled. + // + PXE_UINT64 TxBuffer[MAX_XMIT_BUFFERS]; +} PXE_DB_GET_STATUS; + + + +typedef struct s_pxe_cpb_fill_header { + // + // Source and destination MAC addresses. These will be copied into + // the media header without doing byte swapping. + // + PXE_MAC_ADDR SrcAddr; + PXE_MAC_ADDR DestAddr; + + // + // Address of first byte of media header. The first byte of packet data + // follows the last byte of the media header. + // + PXE_UINT64 MediaHeader; + + // + // Length of packet data in bytes (not including the media header). + // + PXE_UINT32 PacketLen; + + // + // Protocol type. This will be copied into the media header without + // doing byte swapping. Protocol type numbers can be obtained from + // the Assigned Numbers RFC 1700. + // + PXE_UINT16 Protocol; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaHeaderLen; +} PXE_CPB_FILL_HEADER; + + +#define PXE_PROTOCOL_ETHERNET_IP 0x0800 +#define PXE_PROTOCOL_ETHERNET_ARP 0x0806 +#define MAX_XMIT_FRAGMENTS 16 + +typedef struct s_pxe_cpb_fill_header_fragmented { + // + // Source and destination MAC addresses. These will be copied into + // the media header without doing byte swapping. + // + PXE_MAC_ADDR SrcAddr; + PXE_MAC_ADDR DestAddr; + + // + // Length of packet data in bytes (not including the media header). + // + PXE_UINT32 PacketLen; + + // + // Protocol type. This will be copied into the media header without + // doing byte swapping. Protocol type numbers can be obtained from + // the Assigned Numbers RFC 1700. + // + PXE_MEDIA_PROTOCOL Protocol; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaHeaderLen; + + // + // Number of packet fragment descriptors. + // + PXE_UINT16 FragCnt; + + // + // Reserved, must be set to zero. + // + PXE_UINT16 reserved; + + // + // Array of packet fragment descriptors. The first byte of the media + // header is the first byte of the first fragment. + // + struct { + // + // Address of this packet fragment. + // + PXE_UINT64 FragAddr; + + // + // Length of this packet fragment. + // + PXE_UINT32 FragLen; + + // + // Reserved, must be set to zero. + // + PXE_UINT32 reserved; + } FragDesc[MAX_XMIT_FRAGMENTS]; +} PXE_CPB_FILL_HEADER_FRAGMENTED; + + + +typedef struct s_pxe_cpb_transmit { + // + // Address of first byte of frame buffer. This is also the first byte + // of the media header. + // + PXE_UINT64 FrameAddr; + + // + // Length of the data portion of the frame buffer in bytes. Do not + // include the length of the media header. + // + PXE_UINT32 DataLen; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaheaderLen; + + // + // Reserved, must be zero. + // + PXE_UINT16 reserved; +} PXE_CPB_TRANSMIT; + + + +typedef struct s_pxe_cpb_transmit_fragments { + // + // Length of packet data in bytes (not including the media header). + // + PXE_UINT32 FrameLen; + + // + // Length of the media header in bytes. + // + PXE_UINT16 MediaheaderLen; + + // + // Number of packet fragment descriptors. + // + PXE_UINT16 FragCnt; + + // + // Array of frame fragment descriptors. The first byte of the first + // fragment is also the first byte of the media header. + // + struct { + // + // Address of this frame fragment. + // + PXE_UINT64 FragAddr; + + // + // Length of this frame fragment. + // + PXE_UINT32 FragLen; + + // + // Reserved, must be set to zero. + // + PXE_UINT32 reserved; + } FragDesc[MAX_XMIT_FRAGMENTS]; +} PXE_CPB_TRANSMIT_FRAGMENTS; + + +typedef struct s_pxe_cpb_receive { + // + // Address of first byte of receive buffer. This is also the first byte + // of the frame header. + // + PXE_UINT64 BufferAddr; + + // + // Length of receive buffer. This must be large enough to hold the + // received frame (media header + data). If the length of smaller than + // the received frame, data will be lost. + // + PXE_UINT32 BufferLen; + + // + // Reserved, must be set to zero. + // + PXE_UINT32 reserved; +} PXE_CPB_RECEIVE; + + +typedef struct s_pxe_db_receive { + // + // Source and destination MAC addresses from media header. + // + PXE_MAC_ADDR SrcAddr; + PXE_MAC_ADDR DestAddr; + + // + // Length of received frame. May be larger than receive buffer size. + // The receive buffer will not be overwritten. This is how to tell + // if data was lost because the receive buffer was too small. + // + PXE_UINT32 FrameLen; + + // + // Protocol type from media header. + // + PXE_MEDIA_PROTOCOL Protocol; + + // + // Length of media header in received frame. + // + PXE_UINT16 MediaHeaderLen; + + // + // Type of receive frame. + // + PXE_FRAME_TYPE Type; + + // + // Reserved, must be zero. + // + PXE_UINT8 reserved[7]; + +} PXE_DB_RECEIVE; + +#pragma pack() + +/* EOF - efi_pxe.h */ +#endif /* _EFI_PXE_H */ + diff --git a/efi64/include/efi/efiapi.h b/efi64/include/efi/efiapi.h new file mode 100644 index 00000000..5e47324d --- /dev/null +++ b/efi64/include/efi/efiapi.h @@ -0,0 +1,890 @@ +#ifndef _EFI_API_H +#define _EFI_API_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efiapi.h + +Abstract: + + Global EFI runtime & boot service interfaces + + + + +Revision History + +--*/ + +// +// EFI Specification Revision +// + +#define EFI_SPECIFICATION_MAJOR_REVISION 1 +#define EFI_SPECIFICATION_MINOR_REVISION 02 + +// +// Declare forward referenced data structures +// + +INTERFACE_DECL(_EFI_SYSTEM_TABLE); + +// +// EFI Memory +// + +typedef +EFI_STATUS +(EFIAPI *EFI_ALLOCATE_PAGES) ( + IN EFI_ALLOCATE_TYPE Type, + IN EFI_MEMORY_TYPE MemoryType, + IN UINTN NoPages, + OUT EFI_PHYSICAL_ADDRESS *Memory + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FREE_PAGES) ( + IN EFI_PHYSICAL_ADDRESS Memory, + IN UINTN NoPages + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_MEMORY_MAP) ( + IN OUT UINTN *MemoryMapSize, + IN OUT EFI_MEMORY_DESCRIPTOR *MemoryMap, + OUT UINTN *MapKey, + OUT UINTN *DescriptorSize, + OUT UINT32 *DescriptorVersion + ); + +#define NextMemoryDescriptor(Ptr,Size) ((EFI_MEMORY_DESCRIPTOR *) (((UINT8 *) Ptr) + Size)) + + +typedef +EFI_STATUS +(EFIAPI *EFI_ALLOCATE_POOL) ( + IN EFI_MEMORY_TYPE PoolType, + IN UINTN Size, + OUT VOID **Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FREE_POOL) ( + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_VIRTUAL_ADDRESS_MAP) ( + IN UINTN MemoryMapSize, + IN UINTN DescriptorSize, + IN UINT32 DescriptorVersion, + IN EFI_MEMORY_DESCRIPTOR *VirtualMap + ); + + +#define EFI_OPTIONAL_PTR 0x00000001 +#define EFI_INTERNAL_FNC 0x00000002 // Pointer to internal runtime fnc +#define EFI_INTERNAL_PTR 0x00000004 // Pointer to internal runtime data + + +typedef +EFI_STATUS +(EFIAPI *EFI_CONVERT_POINTER) ( + IN UINTN DebugDisposition, + IN OUT VOID **Address + ); + + +// +// EFI Events +// + + + +#define EVT_TIMER 0x80000000 +#define EVT_RUNTIME 0x40000000 +#define EVT_RUNTIME_CONTEXT 0x20000000 + +#define EVT_NOTIFY_WAIT 0x00000100 +#define EVT_NOTIFY_SIGNAL 0x00000200 + +#define EVT_SIGNAL_EXIT_BOOT_SERVICES 0x00000201 +#define EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE 0x60000202 + +#define EVT_EFI_SIGNAL_MASK 0x000000FF +#define EVT_EFI_SIGNAL_MAX 2 + +typedef +VOID +(EFIAPI *EFI_EVENT_NOTIFY) ( + IN EFI_EVENT Event, + IN VOID *Context + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CREATE_EVENT) ( + IN UINT32 Type, + IN EFI_TPL NotifyTpl, + IN EFI_EVENT_NOTIFY NotifyFunction, + IN VOID *NotifyContext, + OUT EFI_EVENT *Event + ); + +typedef enum { + TimerCancel, + TimerPeriodic, + TimerRelative, + TimerTypeMax +} EFI_TIMER_DELAY; + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_TIMER) ( + IN EFI_EVENT Event, + IN EFI_TIMER_DELAY Type, + IN UINT64 TriggerTime + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SIGNAL_EVENT) ( + IN EFI_EVENT Event + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_WAIT_FOR_EVENT) ( + IN UINTN NumberOfEvents, + IN EFI_EVENT *Event, + OUT UINTN *Index + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CLOSE_EVENT) ( + IN EFI_EVENT Event + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CHECK_EVENT) ( + IN EFI_EVENT Event + ); + +// +// Task priority level +// + +#define TPL_APPLICATION 4 +#define TPL_CALLBACK 8 +#define TPL_NOTIFY 16 +#define TPL_HIGH_LEVEL 31 + +typedef +EFI_TPL +(EFIAPI *EFI_RAISE_TPL) ( + IN EFI_TPL NewTpl + ); + +typedef +VOID +(EFIAPI *EFI_RESTORE_TPL) ( + IN EFI_TPL OldTpl + ); + + +// +// EFI platform varibles +// + +#define EFI_GLOBAL_VARIABLE \ + { 0x8BE4DF61, 0x93CA, 0x11d2, {0xAA, 0x0D, 0x00, 0xE0, 0x98, 0x03, 0x2B, 0x8C} } + +// Variable attributes +#define EFI_VARIABLE_NON_VOLATILE 0x00000001 +#define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x00000002 +#define EFI_VARIABLE_RUNTIME_ACCESS 0x00000004 + +// Variable size limitation +#define EFI_MAXIMUM_VARIABLE_SIZE 1024 + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_VARIABLE) ( + IN CHAR16 *VariableName, + IN EFI_GUID *VendorGuid, + OUT UINT32 *Attributes OPTIONAL, + IN OUT UINTN *DataSize, + OUT VOID *Data + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_NEXT_VARIABLE_NAME) ( + IN OUT UINTN *VariableNameSize, + IN OUT CHAR16 *VariableName, + IN OUT EFI_GUID *VendorGuid + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_VARIABLE) ( + IN CHAR16 *VariableName, + IN EFI_GUID *VendorGuid, + IN UINT32 Attributes, + IN UINTN DataSize, + IN VOID *Data + ); + + +// +// EFI Time +// + +typedef struct { + UINT32 Resolution; // 1e-6 parts per million + UINT32 Accuracy; // hertz + BOOLEAN SetsToZero; // Set clears sub-second time +} EFI_TIME_CAPABILITIES; + + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_TIME) ( + OUT EFI_TIME *Time, + OUT EFI_TIME_CAPABILITIES *Capabilities OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_TIME) ( + IN EFI_TIME *Time + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_WAKEUP_TIME) ( + OUT BOOLEAN *Enabled, + OUT BOOLEAN *Pending, + OUT EFI_TIME *Time + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_WAKEUP_TIME) ( + IN BOOLEAN Enable, + IN EFI_TIME *Time OPTIONAL + ); + + +// +// Image functions +// + + +// PE32+ Subsystem type for EFI images + +#if !defined(IMAGE_SUBSYSTEM_EFI_APPLICATION) +#define IMAGE_SUBSYSTEM_EFI_APPLICATION 10 +#define IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER 11 +#define IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER 12 +#endif + +// PE32+ Machine type for EFI images + +#if !defined(EFI_IMAGE_MACHINE_IA32) +#define EFI_IMAGE_MACHINE_IA32 0x014c +#endif + +#if !defined(EFI_IMAGE_MACHINE_IA64) +#define EFI_IMAGE_MACHINE_IA64 0x0200 +#endif + +// Image Entry prototype + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_ENTRY_POINT) ( + IN EFI_HANDLE ImageHandle, + IN struct _EFI_SYSTEM_TABLE *SystemTable + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_LOAD) ( + IN BOOLEAN BootPolicy, + IN EFI_HANDLE ParentImageHandle, + IN EFI_DEVICE_PATH *FilePath, + IN VOID *SourceBuffer OPTIONAL, + IN UINTN SourceSize, + OUT EFI_HANDLE *ImageHandle + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_START) ( + IN EFI_HANDLE ImageHandle, + OUT UINTN *ExitDataSize, + OUT CHAR16 **ExitData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_EXIT) ( + IN EFI_HANDLE ImageHandle, + IN EFI_STATUS ExitStatus, + IN UINTN ExitDataSize, + IN CHAR16 *ExitData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IMAGE_UNLOAD) ( + IN EFI_HANDLE ImageHandle + ); + + +// Image handle +#define LOADED_IMAGE_PROTOCOL \ + { 0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} } + +#define EFI_IMAGE_INFORMATION_REVISION 0x1000 +typedef struct { + UINT32 Revision; + EFI_HANDLE ParentHandle; + struct _EFI_SYSTEM_TABLE *SystemTable; + + // Source location of image + EFI_HANDLE DeviceHandle; + EFI_DEVICE_PATH *FilePath; + VOID *Reserved; + + // Images load options + UINT32 LoadOptionsSize; + VOID *LoadOptions; + + // Location of where image was loaded + VOID *ImageBase; + UINT64 ImageSize; + EFI_MEMORY_TYPE ImageCodeType; + EFI_MEMORY_TYPE ImageDataType; + + // If the driver image supports a dynamic unload request + EFI_IMAGE_UNLOAD Unload; + +} EFI_LOADED_IMAGE; + + +typedef +EFI_STATUS +(EFIAPI *EFI_EXIT_BOOT_SERVICES) ( + IN EFI_HANDLE ImageHandle, + IN UINTN MapKey + ); + +// +// Misc +// + + +typedef +EFI_STATUS +(EFIAPI *EFI_STALL) ( + IN UINTN Microseconds + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_WATCHDOG_TIMER) ( + IN UINTN Timeout, + IN UINT64 WatchdogCode, + IN UINTN DataSize, + IN CHAR16 *WatchdogData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CONNECT_CONTROLLER) ( + IN EFI_HANDLE ControllerHandle, + IN EFI_HANDLE *DriverImageHandle OPTIONAL, + IN EFI_DEVICE_PATH *RemainingDevicePath OPTIONAL, + IN BOOLEAN Recursive + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DISCONNECT_CONTROLLER) ( + IN EFI_HANDLE ControllerHandle, + IN EFI_HANDLE DriverImageHandle OPTIONAL, + IN EFI_HANDLE ChildHandle OPTIONAL + ); + +#define EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL 0x00000001 +#define EFI_OPEN_PROTOCOL_GET_PROTOCOL 0x00000002 +#define EFI_OPEN_PROTOCOL_TEST_PROTOCOL 0x00000004 +#define EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER 0x00000008 +#define EFI_OPEN_PROTOCOL_BY_DRIVER 0x00000010 +#define EFI_OPEN_PROTOCOL_EXCLUSIVE 0x00000020 + +typedef +EFI_STATUS +(EFIAPI *EFI_OPEN_PROTOCOL) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + OUT VOID **Interface OPTIONAL, + IN EFI_HANDLE AgentHandle, + IN EFI_HANDLE ControllerHandle, + IN UINT32 Attributes + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CLOSE_PROTOCOL) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + IN EFI_HANDLE AgentHandle, + IN EFI_HANDLE ControllerHandle + ); + +typedef struct { + EFI_HANDLE AgentHandle; + EFI_HANDLE ControllerHandle; + UINT32 Attributes; + UINT32 OpenCount; +} EFI_OPEN_PROTOCOL_INFORMATION_ENTRY; + +typedef +EFI_STATUS +(EFIAPI *EFI_OPEN_PROTOCOL_INFORMATION) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer, + OUT UINTN *EntryCount + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PROTOCOLS_PER_HANDLE) ( + IN EFI_HANDLE Handle, + OUT EFI_GUID ***ProtocolBuffer, + OUT UINTN *ProtocolBufferCount + ); + +typedef enum { + AllHandles, + ByRegisterNotify, + ByProtocol +} EFI_LOCATE_SEARCH_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_HANDLE_BUFFER) ( + IN EFI_LOCATE_SEARCH_TYPE SearchType, + IN EFI_GUID *Protocol OPTIONAL, + IN VOID *SearchKey OPTIONAL, + IN OUT UINTN *NoHandles, + OUT EFI_HANDLE **Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_PROTOCOL) ( + IN EFI_GUID *Protocol, + IN VOID *Registration OPTIONAL, + OUT VOID **Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES) ( + IN OUT EFI_HANDLE *Handle, + ... + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES) ( + IN OUT EFI_HANDLE Handle, + ... + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CALCULATE_CRC32) ( + IN VOID *Data, + IN UINTN DataSize, + OUT UINT32 *Crc32 + ); + +typedef +VOID +(EFIAPI *EFI_COPY_MEM) ( + IN VOID *Destination, + IN VOID *Source, + IN UINTN Length + ); + +typedef +VOID +(EFIAPI *EFI_SET_MEM) ( + IN VOID *Buffer, + IN UINTN Size, + IN UINT8 Value + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_CREATE_EVENT_EX) ( + IN UINT32 Type, + IN EFI_TPL NotifyTpl, + IN EFI_EVENT_NOTIFY NotifyFunction OPTIONAL, + IN const VOID *NotifyContext OPTIONAL, + IN const EFI_GUID EventGroup OPTIONAL, + OUT EFI_EVENT *Event + ); + +typedef enum { + EfiResetCold, + EfiResetWarm, + EfiResetShutdown +} EFI_RESET_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_RESET_SYSTEM) ( + IN EFI_RESET_TYPE ResetType, + IN EFI_STATUS ResetStatus, + IN UINTN DataSize, + IN CHAR16 *ResetData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_NEXT_MONOTONIC_COUNT) ( + OUT UINT64 *Count + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_NEXT_HIGH_MONO_COUNT) ( + OUT UINT32 *HighCount + ); + +// +// Protocol handler functions +// + +typedef enum { + EFI_NATIVE_INTERFACE, + EFI_PCODE_INTERFACE +} EFI_INTERFACE_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_INSTALL_PROTOCOL_INTERFACE) ( + IN OUT EFI_HANDLE *Handle, + IN EFI_GUID *Protocol, + IN EFI_INTERFACE_TYPE InterfaceType, + IN VOID *Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REINSTALL_PROTOCOL_INTERFACE) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + IN VOID *OldInterface, + IN VOID *NewInterface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UNINSTALL_PROTOCOL_INTERFACE) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + IN VOID *Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_HANDLE_PROTOCOL) ( + IN EFI_HANDLE Handle, + IN EFI_GUID *Protocol, + OUT VOID **Interface + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REGISTER_PROTOCOL_NOTIFY) ( + IN EFI_GUID *Protocol, + IN EFI_EVENT Event, + OUT VOID **Registration + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_HANDLE) ( + IN EFI_LOCATE_SEARCH_TYPE SearchType, + IN EFI_GUID *Protocol OPTIONAL, + IN VOID *SearchKey OPTIONAL, + IN OUT UINTN *BufferSize, + OUT EFI_HANDLE *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOCATE_DEVICE_PATH) ( + IN EFI_GUID *Protocol, + IN OUT EFI_DEVICE_PATH **DevicePath, + OUT EFI_HANDLE *Device + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_INSTALL_CONFIGURATION_TABLE) ( + IN EFI_GUID *Guid, + IN VOID *Table + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_RESERVED_SERVICE) ( + ); + +// +// Standard EFI table header +// + +typedef struct _EFI_TABLE_HEARDER { + UINT64 Signature; + UINT32 Revision; + UINT32 HeaderSize; + UINT32 CRC32; + UINT32 Reserved; +} EFI_TABLE_HEADER; + + +// +// EFI Runtime Serivces Table +// + +#define EFI_RUNTIME_SERVICES_SIGNATURE 0x56524553544e5552 +#define EFI_RUNTIME_SERVICES_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION) + +typedef struct { + EFI_TABLE_HEADER Hdr; + + // + // Time services + // + + EFI_GET_TIME GetTime; + EFI_SET_TIME SetTime; + EFI_GET_WAKEUP_TIME GetWakeupTime; + EFI_SET_WAKEUP_TIME SetWakeupTime; + + // + // Virtual memory services + // + + EFI_SET_VIRTUAL_ADDRESS_MAP SetVirtualAddressMap; + EFI_CONVERT_POINTER ConvertPointer; + + // + // Variable serviers + // + + EFI_GET_VARIABLE GetVariable; + EFI_GET_NEXT_VARIABLE_NAME GetNextVariableName; + EFI_SET_VARIABLE SetVariable; + + // + // Misc + // + + EFI_GET_NEXT_HIGH_MONO_COUNT GetNextHighMonotonicCount; + EFI_RESET_SYSTEM ResetSystem; + +} EFI_RUNTIME_SERVICES; + + +// +// EFI Boot Services Table +// + +#define EFI_BOOT_SERVICES_SIGNATURE 0x56524553544f4f42 +#define EFI_BOOT_SERVICES_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION) + +typedef struct _EFI_BOOT_SERVICES { + + EFI_TABLE_HEADER Hdr; + + // + // Task priority functions + // + + EFI_RAISE_TPL RaiseTPL; + EFI_RESTORE_TPL RestoreTPL; + + // + // Memory functions + // + + EFI_ALLOCATE_PAGES AllocatePages; + EFI_FREE_PAGES FreePages; + EFI_GET_MEMORY_MAP GetMemoryMap; + EFI_ALLOCATE_POOL AllocatePool; + EFI_FREE_POOL FreePool; + + // + // Event & timer functions + // + + EFI_CREATE_EVENT CreateEvent; + EFI_SET_TIMER SetTimer; + EFI_WAIT_FOR_EVENT WaitForEvent; + EFI_SIGNAL_EVENT SignalEvent; + EFI_CLOSE_EVENT CloseEvent; + EFI_CHECK_EVENT CheckEvent; + + // + // Protocol handler functions + // + + EFI_INSTALL_PROTOCOL_INTERFACE InstallProtocolInterface; + EFI_REINSTALL_PROTOCOL_INTERFACE ReinstallProtocolInterface; + EFI_UNINSTALL_PROTOCOL_INTERFACE UninstallProtocolInterface; + EFI_HANDLE_PROTOCOL HandleProtocol; + EFI_HANDLE_PROTOCOL PCHandleProtocol; + EFI_REGISTER_PROTOCOL_NOTIFY RegisterProtocolNotify; + EFI_LOCATE_HANDLE LocateHandle; + EFI_LOCATE_DEVICE_PATH LocateDevicePath; + EFI_INSTALL_CONFIGURATION_TABLE InstallConfigurationTable; + + // + // Image functions + // + + EFI_IMAGE_LOAD LoadImage; + EFI_IMAGE_START StartImage; + EFI_EXIT Exit; + EFI_IMAGE_UNLOAD UnloadImage; + EFI_EXIT_BOOT_SERVICES ExitBootServices; + + // + // Misc functions + // + + EFI_GET_NEXT_MONOTONIC_COUNT GetNextMonotonicCount; + EFI_STALL Stall; + EFI_SET_WATCHDOG_TIMER SetWatchdogTimer; + + // + // DriverSupport Services + // + + EFI_CONNECT_CONTROLLER ConnectController; + EFI_DISCONNECT_CONTROLLER DisconnectController; + + // + // Open and Close Protocol Services + // + EFI_OPEN_PROTOCOL OpenProtocol; + EFI_CLOSE_PROTOCOL CloseProtocol; + EFI_OPEN_PROTOCOL_INFORMATION OpenProtocolInformation; + + // + // Library Services + // + EFI_PROTOCOLS_PER_HANDLE ProtocolsPerHandle; + EFI_LOCATE_HANDLE_BUFFER LocateHandleBuffer; + EFI_LOCATE_PROTOCOL LocateProtocol; + EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES InstallMultipleProtocolInterfaces; + EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES UninstallMultipleProtocolInterfaces; + + // + // 32-bit CRC Services + // + EFI_CALCULATE_CRC32 CalculateCrc32; + + // + // Misc Services + // + EFI_COPY_MEM CopyMem; + EFI_SET_MEM SetMem; + EFI_CREATE_EVENT_EX CreateEventEx; +} EFI_BOOT_SERVICES; + + +// +// EFI Configuration Table and GUID definitions +// + +#define MPS_TABLE_GUID \ + { 0xeb9d2d2f, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define ACPI_TABLE_GUID \ + { 0xeb9d2d30, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define ACPI_20_TABLE_GUID \ + { 0x8868e871, 0xe4f1, 0x11d3, {0xbc, 0x22, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + +#define SMBIOS_TABLE_GUID \ + { 0xeb9d2d31, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define SAL_SYSTEM_TABLE_GUID \ + { 0xeb9d2d32, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + + +typedef struct _EFI_CONFIGURATION_TABLE { + EFI_GUID VendorGuid; + VOID *VendorTable; +} EFI_CONFIGURATION_TABLE; + + +// +// EFI System Table +// + + + + +#define EFI_SYSTEM_TABLE_SIGNATURE 0x5453595320494249 +#define EFI_SYSTEM_TABLE_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION) + +typedef struct _EFI_SYSTEM_TABLE { + EFI_TABLE_HEADER Hdr; + + CHAR16 *FirmwareVendor; + UINT32 FirmwareRevision; + + EFI_HANDLE ConsoleInHandle; + SIMPLE_INPUT_INTERFACE *ConIn; + + EFI_HANDLE ConsoleOutHandle; + SIMPLE_TEXT_OUTPUT_INTERFACE *ConOut; + + EFI_HANDLE StandardErrorHandle; + SIMPLE_TEXT_OUTPUT_INTERFACE *StdErr; + + EFI_RUNTIME_SERVICES *RuntimeServices; + EFI_BOOT_SERVICES *BootServices; + + UINTN NumberOfTableEntries; + EFI_CONFIGURATION_TABLE *ConfigurationTable; + +} EFI_SYSTEM_TABLE; + +#endif + diff --git a/efi64/include/efi/eficon.h b/efi64/include/efi/eficon.h new file mode 100644 index 00000000..089db981 --- /dev/null +++ b/efi64/include/efi/eficon.h @@ -0,0 +1,302 @@ +#ifndef _EFI_CON_H +#define _EFI_CON_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + eficon.h + +Abstract: + + EFI console protocols + + + +Revision History + +--*/ + +// +// Text output protocol +// + +#define SIMPLE_TEXT_OUTPUT_PROTOCOL \ + { 0x387477c2, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_SIMPLE_TEXT_OUTPUT_INTERFACE); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_RESET) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN BOOLEAN ExtendedVerification + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_OUTPUT_STRING) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN CHAR16 *String + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_TEST_STRING) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN CHAR16 *String + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_QUERY_MODE) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN ModeNumber, + OUT UINTN *Columns, + OUT UINTN *Rows + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_SET_MODE) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN ModeNumber + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_SET_ATTRIBUTE) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN Attribute + ); + +#define EFI_BLACK 0x00 +#define EFI_BLUE 0x01 +#define EFI_GREEN 0x02 +#define EFI_CYAN (EFI_BLUE | EFI_GREEN) +#define EFI_RED 0x04 +#define EFI_MAGENTA (EFI_BLUE | EFI_RED) +#define EFI_BROWN (EFI_GREEN | EFI_RED) +#define EFI_LIGHTGRAY (EFI_BLUE | EFI_GREEN | EFI_RED) +#define EFI_BRIGHT 0x08 +#define EFI_DARKGRAY (EFI_BRIGHT) +#define EFI_LIGHTBLUE (EFI_BLUE | EFI_BRIGHT) +#define EFI_LIGHTGREEN (EFI_GREEN | EFI_BRIGHT) +#define EFI_LIGHTCYAN (EFI_CYAN | EFI_BRIGHT) +#define EFI_LIGHTRED (EFI_RED | EFI_BRIGHT) +#define EFI_LIGHTMAGENTA (EFI_MAGENTA | EFI_BRIGHT) +#define EFI_YELLOW (EFI_BROWN | EFI_BRIGHT) +#define EFI_WHITE (EFI_BLUE | EFI_GREEN | EFI_RED | EFI_BRIGHT) + +#define EFI_TEXT_ATTR(f,b) ((f) | ((b) << 4)) + +#define EFI_BACKGROUND_BLACK 0x00 +#define EFI_BACKGROUND_BLUE 0x10 +#define EFI_BACKGROUND_GREEN 0x20 +#define EFI_BACKGROUND_CYAN (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN) +#define EFI_BACKGROUND_RED 0x40 +#define EFI_BACKGROUND_MAGENTA (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_RED) +#define EFI_BACKGROUND_BROWN (EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED) +#define EFI_BACKGROUND_LIGHTGRAY (EFI_BACKGROUND_BLUE | EFI_BACKGROUND_GREEN | EFI_BACKGROUND_RED) + + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_CLEAR_SCREEN) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_SET_CURSOR_POSITION) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN UINTN Column, + IN UINTN Row + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TEXT_ENABLE_CURSOR) ( + IN struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This, + IN BOOLEAN Enable + ); + +typedef struct { + INT32 MaxMode; + // current settings + INT32 Mode; + INT32 Attribute; + INT32 CursorColumn; + INT32 CursorRow; + BOOLEAN CursorVisible; +} SIMPLE_TEXT_OUTPUT_MODE; + +typedef struct _SIMPLE_TEXT_OUTPUT_INTERFACE { + EFI_TEXT_RESET Reset; + + EFI_TEXT_OUTPUT_STRING OutputString; + EFI_TEXT_TEST_STRING TestString; + + EFI_TEXT_QUERY_MODE QueryMode; + EFI_TEXT_SET_MODE SetMode; + EFI_TEXT_SET_ATTRIBUTE SetAttribute; + + EFI_TEXT_CLEAR_SCREEN ClearScreen; + EFI_TEXT_SET_CURSOR_POSITION SetCursorPosition; + EFI_TEXT_ENABLE_CURSOR EnableCursor; + + // Current mode + SIMPLE_TEXT_OUTPUT_MODE *Mode; +} SIMPLE_TEXT_OUTPUT_INTERFACE; + +// +// Define's for required EFI Unicode Box Draw character +// + +#define BOXDRAW_HORIZONTAL 0x2500 +#define BOXDRAW_VERTICAL 0x2502 +#define BOXDRAW_DOWN_RIGHT 0x250c +#define BOXDRAW_DOWN_LEFT 0x2510 +#define BOXDRAW_UP_RIGHT 0x2514 +#define BOXDRAW_UP_LEFT 0x2518 +#define BOXDRAW_VERTICAL_RIGHT 0x251c +#define BOXDRAW_VERTICAL_LEFT 0x2524 +#define BOXDRAW_DOWN_HORIZONTAL 0x252c +#define BOXDRAW_UP_HORIZONTAL 0x2534 +#define BOXDRAW_VERTICAL_HORIZONTAL 0x253c + +#define BOXDRAW_DOUBLE_HORIZONTAL 0x2550 +#define BOXDRAW_DOUBLE_VERTICAL 0x2551 +#define BOXDRAW_DOWN_RIGHT_DOUBLE 0x2552 +#define BOXDRAW_DOWN_DOUBLE_RIGHT 0x2553 +#define BOXDRAW_DOUBLE_DOWN_RIGHT 0x2554 + +#define BOXDRAW_DOWN_LEFT_DOUBLE 0x2555 +#define BOXDRAW_DOWN_DOUBLE_LEFT 0x2556 +#define BOXDRAW_DOUBLE_DOWN_LEFT 0x2557 + +#define BOXDRAW_UP_RIGHT_DOUBLE 0x2558 +#define BOXDRAW_UP_DOUBLE_RIGHT 0x2559 +#define BOXDRAW_DOUBLE_UP_RIGHT 0x255a + +#define BOXDRAW_UP_LEFT_DOUBLE 0x255b +#define BOXDRAW_UP_DOUBLE_LEFT 0x255c +#define BOXDRAW_DOUBLE_UP_LEFT 0x255d + +#define BOXDRAW_VERTICAL_RIGHT_DOUBLE 0x255e +#define BOXDRAW_VERTICAL_DOUBLE_RIGHT 0x255f +#define BOXDRAW_DOUBLE_VERTICAL_RIGHT 0x2560 + +#define BOXDRAW_VERTICAL_LEFT_DOUBLE 0x2561 +#define BOXDRAW_VERTICAL_DOUBLE_LEFT 0x2562 +#define BOXDRAW_DOUBLE_VERTICAL_LEFT 0x2563 + +#define BOXDRAW_DOWN_HORIZONTAL_DOUBLE 0x2564 +#define BOXDRAW_DOWN_DOUBLE_HORIZONTAL 0x2565 +#define BOXDRAW_DOUBLE_DOWN_HORIZONTAL 0x2566 + +#define BOXDRAW_UP_HORIZONTAL_DOUBLE 0x2567 +#define BOXDRAW_UP_DOUBLE_HORIZONTAL 0x2568 +#define BOXDRAW_DOUBLE_UP_HORIZONTAL 0x2569 + +#define BOXDRAW_VERTICAL_HORIZONTAL_DOUBLE 0x256a +#define BOXDRAW_VERTICAL_DOUBLE_HORIZONTAL 0x256b +#define BOXDRAW_DOUBLE_VERTICAL_HORIZONTAL 0x256c + +// +// EFI Required Block Elements Code Chart +// + +#define BLOCKELEMENT_FULL_BLOCK 0x2588 +#define BLOCKELEMENT_LIGHT_SHADE 0x2591 +// +// EFI Required Geometric Shapes Code Chart +// + +#define GEOMETRICSHAPE_UP_TRIANGLE 0x25b2 +#define GEOMETRICSHAPE_RIGHT_TRIANGLE 0x25ba +#define GEOMETRICSHAPE_DOWN_TRIANGLE 0x25bc +#define GEOMETRICSHAPE_LEFT_TRIANGLE 0x25c4 + +// +// EFI Required Arrow shapes +// + +#define ARROW_UP 0x2191 +#define ARROW_DOWN 0x2193 + +// +// Text input protocol +// + +#define SIMPLE_TEXT_INPUT_PROTOCOL \ + { 0x387477c1, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_SIMPLE_INPUT_INTERFACE); + +typedef struct { + UINT16 ScanCode; + CHAR16 UnicodeChar; +} EFI_INPUT_KEY; + +// +// Baseline unicode control chars +// + +#define CHAR_NULL 0x0000 +#define CHAR_BACKSPACE 0x0008 +#define CHAR_TAB 0x0009 +#define CHAR_LINEFEED 0x000A +#define CHAR_CARRIAGE_RETURN 0x000D + +// +// Scan codes for base line keys +// + +#define SCAN_NULL 0x0000 +#define SCAN_UP 0x0001 +#define SCAN_DOWN 0x0002 +#define SCAN_RIGHT 0x0003 +#define SCAN_LEFT 0x0004 +#define SCAN_HOME 0x0005 +#define SCAN_END 0x0006 +#define SCAN_INSERT 0x0007 +#define SCAN_DELETE 0x0008 +#define SCAN_PAGE_UP 0x0009 +#define SCAN_PAGE_DOWN 0x000A +#define SCAN_F1 0x000B +#define SCAN_F2 0x000C +#define SCAN_F3 0x000D +#define SCAN_F4 0x000E +#define SCAN_F5 0x000F +#define SCAN_F6 0x0010 +#define SCAN_F7 0x0011 +#define SCAN_F8 0x0012 +#define SCAN_F9 0x0013 +#define SCAN_F10 0x0014 +#define SCAN_ESC 0x0017 + +typedef +EFI_STATUS +(EFIAPI *EFI_INPUT_RESET) ( + IN struct _SIMPLE_INPUT_INTERFACE *This, + IN BOOLEAN ExtendedVerification + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_INPUT_READ_KEY) ( + IN struct _SIMPLE_INPUT_INTERFACE *This, + OUT EFI_INPUT_KEY *Key + ); + +typedef struct _SIMPLE_INPUT_INTERFACE { + EFI_INPUT_RESET Reset; + EFI_INPUT_READ_KEY ReadKeyStroke; + EFI_EVENT WaitForKey; +} SIMPLE_INPUT_INTERFACE; + +#endif + diff --git a/efi64/include/efi/efidebug.h b/efi64/include/efi/efidebug.h new file mode 100644 index 00000000..f95d492d --- /dev/null +++ b/efi64/include/efi/efidebug.h @@ -0,0 +1,110 @@ +#ifndef _EFI_DEBUG_H +#define _EFI_DEBUG_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efidebug.h + +Abstract: + + EFI library debug functions + + + +Revision History + +--*/ + +extern UINTN EFIDebug; + +#if EFI_DEBUG + + #define DBGASSERT(a) DbgAssert(__FILE__, __LINE__, #a) + #define DEBUG(a) DbgPrint a + +#else + + #define DBGASSERT(a) + #define DEBUG(a) + +#endif + +#if EFI_DEBUG_CLEAR_MEMORY + + #define DBGSETMEM(a,l) SetMem(a,l,(CHAR8)BAD_POINTER) + +#else + + #define DBGSETMEM(a,l) + +#endif + +#define D_INIT 0x00000001 // Initialization style messages +#define D_WARN 0x00000002 // Warnings +#define D_LOAD 0x00000004 // Load events +#define D_FS 0x00000008 // EFI File system +#define D_POOL 0x00000010 // Alloc & Free's +#define D_PAGE 0x00000020 // Alloc & Free's +#define D_INFO 0x00000040 // Verbose +#define D_VAR 0x00000100 // Variable +#define D_PARSE 0x00000200 // Command parsing +#define D_BM 0x00000400 // Boot manager +#define D_BLKIO 0x00001000 // BlkIo Driver +#define D_BLKIO_ULTRA 0x00002000 // BlkIo Driver +#define D_NET 0x00004000 // SNI Driver +#define D_NET_ULTRA 0x00008000 // SNI Driver +#define D_TXTIN 0x00010000 // Simple Input Driver +#define D_TXTOUT 0x00020000 // Simple Text Output Driver +#define D_ERROR_ATA 0x00040000 // ATA error messages +#define D_ERROR 0x80000000 // Error + +#define D_RESERVED 0x7fffC880 // Bits not reserved above + +// +// Current Debug level of the system, value of EFIDebug +// +//#define EFI_DBUG_MASK (D_ERROR | D_WARN | D_LOAD | D_BLKIO | D_INIT) +#define EFI_DBUG_MASK (D_ERROR) + +// +// +// + +#if EFI_DEBUG + + #define ASSERT(a) if(!(a)) DBGASSERT(a) + #define ASSERT_LOCKED(l) if(!(l)->Lock) DBGASSERT(l not locked) + #define ASSERT_STRUCT(p,t) DBGASSERT(t not structure), p + +#else + + #define ASSERT(a) + #define ASSERT_LOCKED(l) + #define ASSERT_STRUCT(p,t) + +#endif + +// +// Prototypes +// + +INTN +DbgAssert ( + CHAR8 *file, + INTN lineno, + CHAR8 *string + ); + +INTN +DbgPrint ( + INTN mask, + CHAR8 *format, + ... + ); + +#endif + diff --git a/efi64/include/efi/efidef.h b/efi64/include/efi/efidef.h new file mode 100644 index 00000000..666b1934 --- /dev/null +++ b/efi64/include/efi/efidef.h @@ -0,0 +1,211 @@ +#ifndef _EFI_DEF_H +#define _EFI_DEF_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efidef.h + +Abstract: + + EFI definitions + + + + +Revision History + +--*/ + +typedef UINT16 CHAR16; +typedef UINT8 CHAR8; +typedef UINT8 BOOLEAN; +#ifndef CONST + #define CONST const +#endif +#ifndef TRUE + #define TRUE ((BOOLEAN) 1) + #define FALSE ((BOOLEAN) 0) +#endif + +#ifndef NULL + #define NULL ((VOID *) 0) +#endif + +typedef UINTN EFI_STATUS; +typedef UINT64 EFI_LBA; +typedef UINTN EFI_TPL; +typedef VOID *EFI_HANDLE; +typedef VOID *EFI_EVENT; + + +// +// Prototype argument decoration for EFI parameters to indicate +// their direction +// +// IN - argument is passed into the function +// OUT - argument (pointer) is returned from the function +// OPTIONAL - argument is optional +// + +#ifndef IN + #define IN + #define OUT + #define OPTIONAL +#endif + + +// +// A GUID +// + +typedef struct { + UINT32 Data1; + UINT16 Data2; + UINT16 Data3; + UINT8 Data4[8]; +} EFI_GUID; + + +// +// Time +// + +typedef struct { + UINT16 Year; // 1998 - 20XX + UINT8 Month; // 1 - 12 + UINT8 Day; // 1 - 31 + UINT8 Hour; // 0 - 23 + UINT8 Minute; // 0 - 59 + UINT8 Second; // 0 - 59 + UINT8 Pad1; + UINT32 Nanosecond; // 0 - 999,999,999 + INT16 TimeZone; // -1440 to 1440 or 2047 + UINT8 Daylight; + UINT8 Pad2; +} EFI_TIME; + +// Bit definitions for EFI_TIME.Daylight +#define EFI_TIME_ADJUST_DAYLIGHT 0x01 +#define EFI_TIME_IN_DAYLIGHT 0x02 + +// Value definition for EFI_TIME.TimeZone +#define EFI_UNSPECIFIED_TIMEZONE 0x07FF + + + +// +// Networking +// + +typedef struct { + UINT8 Addr[4]; +} EFI_IPv4_ADDRESS; + +typedef struct { + UINT8 Addr[16]; +} EFI_IPv6_ADDRESS; + +typedef struct { + UINT8 Addr[32]; +} EFI_MAC_ADDRESS; + +typedef struct { + UINT32 ReceivedQueueTimeoutValue; + UINT32 TransmitQueueTimeoutValue; + UINT16 ProtocolTypeFilter; + BOOLEAN EnableUnicastReceive; + BOOLEAN EnableMulticastReceive; + BOOLEAN EnableBroadcastReceive; + BOOLEAN EnablePromiscuousReceive; + BOOLEAN FlushQueuesOnReset; + BOOLEAN EnableReceiveTimestamps; + BOOLEAN DisableBackgroundPolling; +} EFI_MANAGED_NETWORK_CONFIG_DATA; + +// +// Memory +// + +typedef UINT64 EFI_PHYSICAL_ADDRESS; +typedef UINT64 EFI_VIRTUAL_ADDRESS; + +typedef enum { + AllocateAnyPages, + AllocateMaxAddress, + AllocateAddress, + MaxAllocateType +} EFI_ALLOCATE_TYPE; + +//Preseve the attr on any range supplied. +//ConventialMemory must have WB,SR,SW when supplied. +//When allocating from ConventialMemory always make it WB,SR,SW +//When returning to ConventialMemory always make it WB,SR,SW +//When getting the memory map, or on RT for runtime types + + +typedef enum { + EfiReservedMemoryType, + EfiLoaderCode, + EfiLoaderData, + EfiBootServicesCode, + EfiBootServicesData, + EfiRuntimeServicesCode, + EfiRuntimeServicesData, + EfiConventionalMemory, + EfiUnusableMemory, + EfiACPIReclaimMemory, + EfiACPIMemoryNVS, + EfiMemoryMappedIO, + EfiMemoryMappedIOPortSpace, + EfiPalCode, + EfiMaxMemoryType +} EFI_MEMORY_TYPE; + +// possible caching types for the memory range +#define EFI_MEMORY_UC 0x0000000000000001 +#define EFI_MEMORY_WC 0x0000000000000002 +#define EFI_MEMORY_WT 0x0000000000000004 +#define EFI_MEMORY_WB 0x0000000000000008 +#define EFI_MEMORY_UCE 0x0000000000000010 + +// physical memory protection on range +#define EFI_MEMORY_WP 0x0000000000001000 +#define EFI_MEMORY_RP 0x0000000000002000 +#define EFI_MEMORY_XP 0x0000000000004000 + +// range requires a runtime mapping +#define EFI_MEMORY_RUNTIME 0x8000000000000000 + +#define EFI_MEMORY_DESCRIPTOR_VERSION 1 +typedef struct { + UINT32 Type; // Field size is 32 bits followed by 32 bit pad + UINT32 Pad; + EFI_PHYSICAL_ADDRESS PhysicalStart; // Field size is 64 bits + EFI_VIRTUAL_ADDRESS VirtualStart; // Field size is 64 bits + UINT64 NumberOfPages; // Field size is 64 bits + UINT64 Attribute; // Field size is 64 bits +} EFI_MEMORY_DESCRIPTOR; + +// +// International Language +// + +typedef UINT8 ISO_639_2; +#define ISO_639_2_ENTRY_SIZE 3 + +// +// +// + +#define EFI_PAGE_SIZE 4096 +#define EFI_PAGE_MASK 0xFFF +#define EFI_PAGE_SHIFT 12 + +#define EFI_SIZE_TO_PAGES(a) \ + ( ((a) >> EFI_PAGE_SHIFT) + ((a) & EFI_PAGE_MASK ? 1 : 0) ) + +#endif diff --git a/efi64/include/efi/efidevp.h b/efi64/include/efi/efidevp.h new file mode 100644 index 00000000..beb5785a --- /dev/null +++ b/efi64/include/efi/efidevp.h @@ -0,0 +1,402 @@ +#ifndef _DEVPATH_H +#define _DEVPATH_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + devpath.h + +Abstract: + + Defines for parsing the EFI Device Path structures + + + +Revision History + +--*/ + +// +// Device Path structures - Section C +// + +typedef struct _EFI_DEVICE_PATH { + UINT8 Type; + UINT8 SubType; + UINT8 Length[2]; +} EFI_DEVICE_PATH; + +#define EFI_DP_TYPE_MASK 0x7F +#define EFI_DP_TYPE_UNPACKED 0x80 + +//#define END_DEVICE_PATH_TYPE 0xff +#define END_DEVICE_PATH_TYPE 0x7f +//#define END_DEVICE_PATH_TYPE_UNPACKED 0x7f + +#define END_ENTIRE_DEVICE_PATH_SUBTYPE 0xff +#define END_INSTANCE_DEVICE_PATH_SUBTYPE 0x01 +#define END_DEVICE_PATH_LENGTH (sizeof(EFI_DEVICE_PATH)) + + +#define DP_IS_END_TYPE(a) +#define DP_IS_END_SUBTYPE(a) ( ((a)->SubType == END_ENTIRE_DEVICE_PATH_SUBTYPE ) + +#define DevicePathType(a) ( ((a)->Type) & EFI_DP_TYPE_MASK ) +#define DevicePathSubType(a) ( (a)->SubType ) +#define DevicePathNodeLength(a) ( ((a)->Length[0]) | ((a)->Length[1] << 8) ) +#define NextDevicePathNode(a) ( (EFI_DEVICE_PATH *) ( ((UINT8 *) (a)) + DevicePathNodeLength(a))) +//#define IsDevicePathEndType(a) ( DevicePathType(a) == END_DEVICE_PATH_TYPE_UNPACKED ) +#define IsDevicePathEndType(a) ( DevicePathType(a) == END_DEVICE_PATH_TYPE ) +#define IsDevicePathEndSubType(a) ( (a)->SubType == END_ENTIRE_DEVICE_PATH_SUBTYPE ) +#define IsDevicePathEnd(a) ( IsDevicePathEndType(a) && IsDevicePathEndSubType(a) ) +#define IsDevicePathUnpacked(a) ( (a)->Type & EFI_DP_TYPE_UNPACKED ) + + +#define SetDevicePathNodeLength(a,l) { \ + (a)->Length[0] = (UINT8) (l); \ + (a)->Length[1] = (UINT8) ((l) >> 8); \ + } + +#define SetDevicePathEndNode(a) { \ + (a)->Type = END_DEVICE_PATH_TYPE; \ + (a)->SubType = END_ENTIRE_DEVICE_PATH_SUBTYPE; \ + (a)->Length[0] = sizeof(EFI_DEVICE_PATH); \ + (a)->Length[1] = 0; \ + } + + + +/* + * + */ +#define HARDWARE_DEVICE_PATH 0x01 + +#define HW_PCI_DP 0x01 +typedef struct _PCI_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 Function; + UINT8 Device; +} PCI_DEVICE_PATH; + +#define HW_PCCARD_DP 0x02 +typedef struct _PCCARD_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 SocketNumber; +} PCCARD_DEVICE_PATH; + +#define HW_MEMMAP_DP 0x03 +typedef struct _MEMMAP_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 MemoryType; + EFI_PHYSICAL_ADDRESS StartingAddress; + EFI_PHYSICAL_ADDRESS EndingAddress; +} MEMMAP_DEVICE_PATH; + +#define HW_VENDOR_DP 0x04 +typedef struct _VENDOR_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_GUID Guid; +} VENDOR_DEVICE_PATH; + +#define UNKNOWN_DEVICE_GUID \ + { 0xcf31fac5, 0xc24e, 0x11d2, {0x85, 0xf3, 0x0, 0xa0, 0xc9, 0x3e, 0xc9, 0x3b} } + +typedef struct _UKNOWN_DEVICE_VENDOR_DP { + VENDOR_DEVICE_PATH DevicePath; + UINT8 LegacyDriveLetter; +} UNKNOWN_DEVICE_VENDOR_DEVICE_PATH; + +#define HW_CONTROLLER_DP 0x05 +typedef struct _CONTROLLER_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Controller; +} CONTROLLER_DEVICE_PATH; + +/* + * + */ +#define ACPI_DEVICE_PATH 0x02 + +#define ACPI_DP 0x01 +typedef struct _ACPI_HID_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 HID; + UINT32 UID; +} ACPI_HID_DEVICE_PATH; + +#define EXPANDED_ACPI_DP 0x02 +typedef struct _EXPANDED_ACPI_HID_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 HID; + UINT32 UID; + UINT32 CID; + UINT8 HidStr[1]; +} EXPANDED_ACPI_HID_DEVICE_PATH; + +// +// EISA ID Macro +// EISA ID Definition 32-bits +// bits[15:0] - three character compressed ASCII EISA ID. +// bits[31:16] - binary number +// Compressed ASCII is 5 bits per character 0b00001 = 'A' 0b11010 = 'Z' +// +#define PNP_EISA_ID_CONST 0x41d0 +#define EISA_ID(_Name, _Num) ((UINT32) ((_Name) | (_Num) << 16)) +#define EISA_PNP_ID(_PNPId) (EISA_ID(PNP_EISA_ID_CONST, (_PNPId))) + +#define PNP_EISA_ID_MASK 0xffff +#define EISA_ID_TO_NUM(_Id) ((_Id) >> 16) +/* + * + */ +#define MESSAGING_DEVICE_PATH 0x03 + +#define MSG_ATAPI_DP 0x01 +typedef struct _ATAPI_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 PrimarySecondary; + UINT8 SlaveMaster; + UINT16 Lun; +} ATAPI_DEVICE_PATH; + +#define MSG_SCSI_DP 0x02 +typedef struct _SCSI_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT16 Pun; + UINT16 Lun; +} SCSI_DEVICE_PATH; + +#define MSG_FIBRECHANNEL_DP 0x03 +typedef struct _FIBRECHANNEL_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 WWN; + UINT64 Lun; +} FIBRECHANNEL_DEVICE_PATH; + +#define MSG_1394_DP 0x04 +typedef struct _F1394_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 Guid; +} F1394_DEVICE_PATH; + +#define MSG_USB_DP 0x05 +typedef struct _USB_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT8 Port; + UINT8 Endpoint; +} USB_DEVICE_PATH; + +#define MSG_USB_CLASS_DP 0x0F +typedef struct _USB_CLASS_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT16 VendorId; + UINT16 ProductId; + UINT8 DeviceClass; + UINT8 DeviceSubclass; + UINT8 DeviceProtocol; +} USB_CLASS_DEVICE_PATH; + +#define MSG_I2O_DP 0x06 +typedef struct _I2O_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Tid; +} I2O_DEVICE_PATH; + +#define MSG_MAC_ADDR_DP 0x0b +typedef struct _MAC_ADDR_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_MAC_ADDRESS MacAddress; + UINT8 IfType; +} MAC_ADDR_DEVICE_PATH; + +#define MSG_IPv4_DP 0x0c +typedef struct _IPv4_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_IPv4_ADDRESS LocalIpAddress; + EFI_IPv4_ADDRESS RemoteIpAddress; + UINT16 LocalPort; + UINT16 RemotePort; + UINT16 Protocol; + BOOLEAN StaticIpAddress; +} IPv4_DEVICE_PATH; + +#define MSG_IPv6_DP 0x0d +typedef struct _IPv6_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_IPv6_ADDRESS LocalIpAddress; + EFI_IPv6_ADDRESS RemoteIpAddress; + UINT16 LocalPort; + UINT16 RemotePort; + UINT16 Protocol; + BOOLEAN StaticIpAddress; +} IPv6_DEVICE_PATH; + +#define MSG_INFINIBAND_DP 0x09 +typedef struct _INFINIBAND_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 NodeGuid; + UINT64 IocGuid; + UINT64 DeviceId; +} INFINIBAND_DEVICE_PATH; + +#define MSG_UART_DP 0x0e +typedef struct _UART_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 Reserved; + UINT64 BaudRate; + UINT8 DataBits; + UINT8 Parity; + UINT8 StopBits; +} UART_DEVICE_PATH; + +#define MSG_VENDOR_DP 0x0A +/* Use VENDOR_DEVICE_PATH struct */ + +#define DEVICE_PATH_MESSAGING_PC_ANSI \ + { 0xe0c14753, 0xf9be, 0x11d2, {0x9a, 0x0c, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define DEVICE_PATH_MESSAGING_VT_100 \ + { 0xdfa66065, 0xb419, 0x11d3, {0x9a, 0x2d, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + + + +#define MEDIA_DEVICE_PATH 0x04 + +#define MEDIA_HARDDRIVE_DP 0x01 +typedef struct _HARDDRIVE_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 PartitionNumber; + UINT64 PartitionStart; + UINT64 PartitionSize; + UINT8 Signature[16]; + UINT8 MBRType; + UINT8 SignatureType; +} HARDDRIVE_DEVICE_PATH; + +#define MBR_TYPE_PCAT 0x01 +#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER 0x02 + +#define SIGNATURE_TYPE_MBR 0x01 +#define SIGNATURE_TYPE_GUID 0x02 + +#define MEDIA_CDROM_DP 0x02 +typedef struct _CDROM_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT32 BootEntry; + UINT64 PartitionStart; + UINT64 PartitionSize; +} CDROM_DEVICE_PATH; + +#define MEDIA_VENDOR_DP 0x03 +/* Use VENDOR_DEVICE_PATH struct */ + +#define MEDIA_FILEPATH_DP 0x04 +typedef struct _FILEPATH_DEVICE_PATH { + EFI_DEVICE_PATH Header; + CHAR16 PathName[1]; +} FILEPATH_DEVICE_PATH; + +#define SIZE_OF_FILEPATH_DEVICE_PATH EFI_FIELD_OFFSET(FILEPATH_DEVICE_PATH,PathName) + +#define MEDIA_PROTOCOL_DP 0x05 +typedef struct _MEDIA_PROTOCOL_DEVICE_PATH { + EFI_DEVICE_PATH Header; + EFI_GUID Protocol; +} MEDIA_PROTOCOL_DEVICE_PATH; + + +#define BBS_DEVICE_PATH 0x05 +#define BBS_BBS_DP 0x01 +typedef struct _BBS_BBS_DEVICE_PATH { + EFI_DEVICE_PATH Header; + UINT16 DeviceType; + UINT16 StatusFlag; + CHAR8 String[1]; +} BBS_BBS_DEVICE_PATH; + +/* DeviceType definitions - from BBS specification */ +#define BBS_TYPE_FLOPPY 0x01 +#define BBS_TYPE_HARDDRIVE 0x02 +#define BBS_TYPE_CDROM 0x03 +#define BBS_TYPE_PCMCIA 0x04 +#define BBS_TYPE_USB 0x05 +#define BBS_TYPE_EMBEDDED_NETWORK 0x06 +#define BBS_TYPE_DEV 0x80 +#define BBS_TYPE_UNKNOWN 0xFF + +typedef union { + EFI_DEVICE_PATH DevPath; + PCI_DEVICE_PATH Pci; + PCCARD_DEVICE_PATH PcCard; + MEMMAP_DEVICE_PATH MemMap; + VENDOR_DEVICE_PATH Vendor; + UNKNOWN_DEVICE_VENDOR_DEVICE_PATH UnknownVendor; + CONTROLLER_DEVICE_PATH Controller; + ACPI_HID_DEVICE_PATH Acpi; + + ATAPI_DEVICE_PATH Atapi; + SCSI_DEVICE_PATH Scsi; + FIBRECHANNEL_DEVICE_PATH FibreChannel; + + F1394_DEVICE_PATH F1394; + USB_DEVICE_PATH Usb; + USB_CLASS_DEVICE_PATH UsbClass; + I2O_DEVICE_PATH I2O; + MAC_ADDR_DEVICE_PATH MacAddr; + IPv4_DEVICE_PATH Ipv4; + IPv6_DEVICE_PATH Ipv6; + INFINIBAND_DEVICE_PATH InfiniBand; + UART_DEVICE_PATH Uart; + + HARDDRIVE_DEVICE_PATH HardDrive; + CDROM_DEVICE_PATH CD; + + FILEPATH_DEVICE_PATH FilePath; + MEDIA_PROTOCOL_DEVICE_PATH MediaProtocol; + + BBS_BBS_DEVICE_PATH Bbs; + +} EFI_DEV_PATH; + +typedef union { + EFI_DEVICE_PATH *DevPath; + PCI_DEVICE_PATH *Pci; + PCCARD_DEVICE_PATH *PcCard; + MEMMAP_DEVICE_PATH *MemMap; + VENDOR_DEVICE_PATH *Vendor; + UNKNOWN_DEVICE_VENDOR_DEVICE_PATH *UnknownVendor; + CONTROLLER_DEVICE_PATH *Controller; + ACPI_HID_DEVICE_PATH *Acpi; + + ATAPI_DEVICE_PATH *Atapi; + SCSI_DEVICE_PATH *Scsi; + FIBRECHANNEL_DEVICE_PATH *FibreChannel; + + F1394_DEVICE_PATH *F1394; + USB_DEVICE_PATH *Usb; + USB_CLASS_DEVICE_PATH *UsbClass; + I2O_DEVICE_PATH *I2O; + MAC_ADDR_DEVICE_PATH *MacAddr; + IPv4_DEVICE_PATH *Ipv4; + IPv6_DEVICE_PATH *Ipv6; + INFINIBAND_DEVICE_PATH *InfiniBand; + UART_DEVICE_PATH *Uart; + + HARDDRIVE_DEVICE_PATH *HardDrive; + + FILEPATH_DEVICE_PATH *FilePath; + MEDIA_PROTOCOL_DEVICE_PATH *MediaProtocol; + + CDROM_DEVICE_PATH *CD; + BBS_BBS_DEVICE_PATH *Bbs; + +} EFI_DEV_PATH_PTR; + + +#endif diff --git a/efi64/include/efi/efierr.h b/efi64/include/efi/efierr.h new file mode 100644 index 00000000..dfd3d3cf --- /dev/null +++ b/efi64/include/efi/efierr.h @@ -0,0 +1,67 @@ +#ifndef _EFI_ERR_H +#define _EFI_ERR_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efierr.h + +Abstract: + + EFI error codes + + + + +Revision History + +--*/ + + +#define EFIWARN(a) (a) +#define EFI_ERROR(a) (((INTN) a) < 0) + + +#define EFI_SUCCESS 0 +#define EFI_LOAD_ERROR EFIERR(1) +#define EFI_INVALID_PARAMETER EFIERR(2) +#define EFI_UNSUPPORTED EFIERR(3) +#define EFI_BAD_BUFFER_SIZE EFIERR(4) +#define EFI_BUFFER_TOO_SMALL EFIERR(5) +#define EFI_NOT_READY EFIERR(6) +#define EFI_DEVICE_ERROR EFIERR(7) +#define EFI_WRITE_PROTECTED EFIERR(8) +#define EFI_OUT_OF_RESOURCES EFIERR(9) +#define EFI_VOLUME_CORRUPTED EFIERR(10) +#define EFI_VOLUME_FULL EFIERR(11) +#define EFI_NO_MEDIA EFIERR(12) +#define EFI_MEDIA_CHANGED EFIERR(13) +#define EFI_NOT_FOUND EFIERR(14) +#define EFI_ACCESS_DENIED EFIERR(15) +#define EFI_NO_RESPONSE EFIERR(16) +#define EFI_NO_MAPPING EFIERR(17) +#define EFI_TIMEOUT EFIERR(18) +#define EFI_NOT_STARTED EFIERR(19) +#define EFI_ALREADY_STARTED EFIERR(20) +#define EFI_ABORTED EFIERR(21) +#define EFI_ICMP_ERROR EFIERR(22) +#define EFI_TFTP_ERROR EFIERR(23) +#define EFI_PROTOCOL_ERROR EFIERR(24) +#define EFI_INCOMPATIBLE_VERSION EFIERR(25) +#define EFI_SECURITY_VIOLATION EFIERR(26) +#define EFI_CRC_ERROR EFIERR(27) +#define EFI_END_OF_MEDIA EFIERR(28) +#define EFI_END_OF_FILE EFIERR(31) +#define EFI_INVALID_LANGUAGE EFIERR(32) +#define EFI_COMPROMISED_DATA EFIERR(33) + +#define EFI_WARN_UNKOWN_GLYPH EFIWARN(1) +#define EFI_WARN_DELETE_FAILURE EFIWARN(2) +#define EFI_WARN_WRITE_FAILURE EFIWARN(3) +#define EFI_WARN_BUFFER_TOO_SMALL EFIWARN(4) + +#endif + diff --git a/efi64/include/efi/efifs.h b/efi64/include/efi/efifs.h new file mode 100644 index 00000000..fc595d10 --- /dev/null +++ b/efi64/include/efi/efifs.h @@ -0,0 +1,116 @@ +#ifndef _EFI_FS_H +#define _EFI_FS_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efifs.h + +Abstract: + + EFI File System structures + + + +Revision History + +--*/ + + +// +// EFI Partition header (normaly starts in LBA 1) +// + +#define EFI_PARTITION_SIGNATURE 0x5053595320494249 +#define EFI_PARTITION_REVISION 0x00010001 +#define MIN_EFI_PARTITION_BLOCK_SIZE 512 +#define EFI_PARTITION_LBA 1 + +typedef struct _EFI_PARTITION_HEADER { + EFI_TABLE_HEADER Hdr; + UINT32 DirectoryAllocationNumber; + UINT32 BlockSize; + EFI_LBA FirstUsableLba; + EFI_LBA LastUsableLba; + EFI_LBA UnusableSpace; + EFI_LBA FreeSpace; + EFI_LBA RootFile; + EFI_LBA SecutiryFile; +} EFI_PARTITION_HEADER; + + +// +// File header +// + +#define EFI_FILE_HEADER_SIGNATURE 0x454c494620494249 +#define EFI_FILE_HEADER_REVISION 0x00010000 +#define EFI_FILE_STRING_SIZE 260 + +typedef struct _EFI_FILE_HEADER { + EFI_TABLE_HEADER Hdr; + UINT32 Class; + UINT32 LBALOffset; + EFI_LBA Parent; + UINT64 FileSize; + UINT64 FileAttributes; + EFI_TIME FileCreateTime; + EFI_TIME FileModificationTime; + EFI_GUID VendorGuid; + CHAR16 FileString[EFI_FILE_STRING_SIZE]; +} EFI_FILE_HEADER; + + +// +// Return the file's first LBAL which is in the same +// logical block as the file header +// + +#define EFI_FILE_LBAL(a) ((EFI_LBAL *) (((CHAR8 *) (a)) + (a)->LBALOffset)) + +#define EFI_FILE_CLASS_FREE_SPACE 1 +#define EFI_FILE_CLASS_EMPTY 2 +#define EFI_FILE_CLASS_NORMAL 3 + + +// +// Logical Block Address List - the fundemental block +// description structure +// + +#define EFI_LBAL_SIGNATURE 0x4c41424c20494249 +#define EFI_LBAL_REVISION 0x00010000 + +typedef struct _EFI_LBAL { + EFI_TABLE_HEADER Hdr; + UINT32 Class; + EFI_LBA Parent; + EFI_LBA Next; + UINT32 ArraySize; + UINT32 ArrayCount; +} EFI_LBAL; + +// Array size +#define EFI_LBAL_ARRAY_SIZE(lbal,offs,blks) \ + (((blks) - (offs) - (lbal)->Hdr.HeaderSize) / sizeof(EFI_RL)) + +// +// Logical Block run-length +// + +typedef struct { + EFI_LBA Start; + UINT64 Length; +} EFI_RL; + +// +// Return the run-length structure from an LBAL header +// + +#define EFI_LBAL_RL(a) ((EFI_RL*) (((CHAR8 *) (a)) + (a)->Hdr.HeaderSize)) + +#endif + diff --git a/efi64/include/efi/efigpt.h b/efi64/include/efi/efigpt.h new file mode 100644 index 00000000..d1694ae7 --- /dev/null +++ b/efi64/include/efi/efigpt.h @@ -0,0 +1,68 @@ +#ifndef _EFI_GPT_H +#define _EFI_GPT_H +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + EfiGpt.h + +Abstract: + Include file for EFI partitioning scheme + + + +Revision History + +--*/ + +#define PRIMARY_PART_HEADER_LBA 1 + +typedef struct { + EFI_TABLE_HEADER Header; + EFI_LBA MyLBA; + EFI_LBA AlternateLBA; + EFI_LBA FirstUsableLBA; + EFI_LBA LastUsableLBA; + EFI_GUID DiskGUID; + EFI_LBA PartitionEntryLBA; + UINT32 NumberOfPartitionEntries; + UINT32 SizeOfPartitionEntry; + UINT32 PartitionEntryArrayCRC32; +} EFI_PARTITION_TABLE_HEADER; + +#define EFI_PTAB_HEADER_ID "EFI PART" + +typedef struct { + EFI_GUID PartitionTypeGUID; + EFI_GUID UniquePartitionGUID; + EFI_LBA StartingLBA; + EFI_LBA EndingLBA; + UINT64 Attributes; + CHAR16 PartitionName[36]; +} EFI_PARTITION_ENTRY; + +// +// EFI Partition Attributes +// +#define EFI_PART_USED_BY_EFI 0x0000000000000001 +#define EFI_PART_REQUIRED_TO_FUNCTION 0x0000000000000002 +#define EFI_PART_USED_BY_OS 0x0000000000000004 +#define EFI_PART_REQUIRED_BY_OS 0x0000000000000008 +#define EFI_PART_BACKUP_REQUIRED 0x0000000000000010 +#define EFI_PART_USER_DATA 0x0000000000000020 +#define EFI_PART_CRITICAL_USER_DATA 0x0000000000000040 +#define EFI_PART_REDUNDANT_PARTITION 0x0000000000000080 + +#define EFI_PART_TYPE_UNUSED_GUID \ + { 0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} } + +#define EFI_PART_TYPE_EFI_SYSTEM_PART_GUID \ + { 0xc12a7328, 0xf81f, 0x11d2, {0xba, 0x4b, 0x00, 0xa0, 0xc9, 0x3e, 0xc9, 0x3b} } + +#define EFI_PART_TYPE_LEGACY_MBR_GUID \ + { 0x024dee41, 0x33e7, 0x11d3, {0x9d, 0x69, 0x00, 0x08, 0xc7, 0x81, 0xf3, 0x9f} } + +#endif + diff --git a/efi64/include/efi/efiip.h b/efi64/include/efi/efiip.h new file mode 100644 index 00000000..83950796 --- /dev/null +++ b/efi64/include/efi/efiip.h @@ -0,0 +1,459 @@ +#ifndef _EFI_IP_H +#define _EFI_IP_H + +/*++ +Copyright (c) 2013 Intel Corporation + +--*/ + +#define EFI_IP4_SERVICE_BINDING_PROTOCOL \ + {0xc51711e7,0xb4bf,0x404a,{0xbf,0xb8,0x0a,0x04, 0x8e,0xf1,0xff,0xe4}} + +#define EFI_IP4_PROTOCOL \ + {0x41d94cd2,0x35b6,0x455a,{0x82,0x58,0xd4,0xe5,0x13,0x34,0xaa,0xdd}} + +#define EFI_IP6_SERVICE_BINDING_PROTOCOL \ + {0xec835dd3,0xfe0f,0x617b,{0xa6,0x21,0xb3,0x50,0xc3,0xe1,0x33,0x88}} + +#define EFI_IP6_PROTOCOL \ + {0x2c8759d5,0x5c2d,0x66ef,{0x92,0x5f,0xb6,0x6c,0x10,0x19,0x57,0xe2}} + +INTERFACE_DECL(_EFI_IP4); +INTERFACE_DECL(_EFI_IP6); + +typedef struct { + EFI_HANDLE InstanceHandle; + EFI_IPv4_ADDRESS Ip4Address; + EFI_IPv4_ADDRESS SubnetMask; +} EFI_IP4_ADDRESS_PAIR; + +typedef struct { + EFI_HANDLE DriverHandle; + UINT32 AddressCount; + EFI_IP4_ADDRESS_PAIR AddressPairs[1]; +} EFI_IP4_VARIABLE_DATA; + +typedef struct { + UINT8 DefaultProtocol; + BOOLEAN AcceptAnyProtocol; + BOOLEAN AcceptIcmpErrors; + BOOLEAN AcceptBroadcast; + BOOLEAN AcceptPromiscuous; + BOOLEAN UseDefaultAddress; + EFI_IPv4_ADDRESS StationAddress; + EFI_IPv4_ADDRESS SubnetMask; + UINT8 TypeOfService; + UINT8 TimeToLive; + BOOLEAN DoNotFragment; + BOOLEAN RawData; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; +} EFI_IP4_CONFIG_DATA; + +typedef struct { + EFI_IPv4_ADDRESS SubnetAddress; + EFI_IPv4_ADDRESS SubnetMask; + EFI_IPv4_ADDRESS GatewayAddress; +} EFI_IP4_ROUTE_TABLE; + +typedef struct { + UINT8 Type; + UINT8 Code; +} EFI_IP4_ICMP_TYPE; + +typedef struct { + BOOLEAN IsStarted; + UINT32 MaxPacketSize; + EFI_IP4_CONFIG_DATA ConfigData; + BOOLEAN IsConfigured; + UINT32 GroupCount; + EFI_IPv4_ADDRESS *GroupTable; + UINT32 RouteCount; + EFI_IP4_ROUTE_TABLE *RouteTable; + UINT32 IcmpTypeCount; + EFI_IP4_ICMP_TYPE *IcmpTypeList; +} EFI_IP4_MODE_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_GET_MODE_DATA) ( + IN struct _EFI_IP4 *This, + OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_CONFIGURE) ( + IN struct _EFI_IP4 *This, + IN EFI_IP4_CONFIG_DATA *IpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_GROUPS) ( + IN struct _EFI_IP4 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv4_ADDRESS *GroupAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_ROUTES) ( + IN struct _EFI_IP4 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv4_ADDRESS *SubnetAddress, + IN EFI_IPv4_ADDRESS *SubnetMask, + IN EFI_IPv4_ADDRESS *GatewayAddress + ); + +#pragma pack(1) +typedef struct { + UINT8 HeaderLength:4; + UINT8 Version:4; + UINT8 TypeOfService; + UINT16 TotalLength; + UINT16 Identification; + UINT16 Fragmentation; + UINT8 TimeToLive; + UINT8 Protocol; + UINT16 Checksum; + EFI_IPv4_ADDRESS SourceAddress; + EFI_IPv4_ADDRESS DestinationAddress; +} EFI_IP4_HEADER; +#pragma pack() + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_IP4_FRAGMENT_DATA; + +typedef struct { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + UINT32 HeaderLength; + EFI_IP4_HEADER *Header; + UINT32 OptionsLength; + VOID *Options; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_IP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP4_RECEIVE_DATA; + +typedef struct { + EFI_IPv4_ADDRESS SourceAddress; + EFI_IPv4_ADDRESS GatewayAddress; + UINT8 Protocol; + UINT8 TypeOfService; + UINT8 TimeToLive; + BOOLEAN DoNotFragment; +} EFI_IP4_OVERRIDE_DATA; + +typedef struct { + EFI_IPv4_ADDRESS DestinationAddress; + EFI_IP4_OVERRIDE_DATA *OverrideData; + UINT32 OptionsLength; + VOID *OptionsBuffer; + UINT32 TotalDataLength; + UINT32 FragmentCount; + EFI_IP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP4_TRANSMIT_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_IP4_RECEIVE_DATA *RxData; + EFI_IP4_TRANSMIT_DATA *TxData; + } Packet; +} EFI_IP4_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_TRANSMIT) ( + IN struct _EFI_IP4 *This, + IN EFI_IP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_RECEIVE) ( + IN struct _EFI_IP4 *This, + IN EFI_IP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_CANCEL)( + IN struct _EFI_IP4 *This, + IN EFI_IP4_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP4_POLL) ( + IN struct _EFI_IP4 *This + ); + +typedef struct _EFI_IP4 { + EFI_IP4_GET_MODE_DATA GetModeData; + EFI_IP4_CONFIGURE Configure; + EFI_IP4_GROUPS Groups; + EFI_IP4_ROUTES Routes; + EFI_IP4_TRANSMIT Transmit; + EFI_IP4_RECEIVE Receive; + EFI_IP4_CANCEL Cancel; + EFI_IP4_POLL Poll; +} EFI_IP4; + +typedef struct { + UINT8 DefaultProtocol; + BOOLEAN AcceptAnyProtocol; + BOOLEAN AcceptIcmpErrors; + BOOLEAN AcceptPromiscuous; + EFI_IPv6_ADDRESS DestinationAddress; + EFI_IPv6_ADDRESS StationAddress; + UINT8 TrafficClass; + UINT8 HopLimit; + UINT32 FlowLabel; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; +} EFI_IP6_CONFIG_DATA; + +typedef struct { + EFI_IPv6_ADDRESS Address; + UINT8 PrefixLength; +} EFI_IP6_ADDRESS_INFO; + +typedef struct { + EFI_IPv6_ADDRESS Gateway; + EFI_IPv6_ADDRESS Destination; + UINT8 PrefixLength; +} EFI_IP6_ROUTE_TABLE; + +typedef enum { + EfiNeighborInComplete, + EfiNeighborReachable, + EfiNeighborStale, + EfiNeighborDelay, + EfiNeighborProbe +} EFI_IP6_NEIGHBOR_STATE; + +typedef struct { + EFI_IPv6_ADDRESS Neighbor; + EFI_MAC_ADDRESS LinkAddress; + EFI_IP6_NEIGHBOR_STATE State; +} EFI_IP6_NEIGHBOR_CACHE; + +typedef struct { + UINT8 Type; + UINT8 Code; +} EFI_IP6_ICMP_TYPE; + +//*********************************************************** +// ICMPv6 type definitions for error messages +//*********************************************************** +#define ICMP_V6_DEST_UNREACHABLE 0x1 +#define ICMP_V6_PACKET_TOO_BIG 0x2 +#define ICMP_V6_TIME_EXCEEDED 0x3 +#define ICMP_V6_PARAMETER_PROBLEM 0x4 + +//*********************************************************** +// ICMPv6 type definition for informational messages +//*********************************************************** +#define ICMP_V6_ECHO_REQUEST 0x80 +#define ICMP_V6_ECHO_REPLY 0x81 +#define ICMP_V6_LISTENER_QUERY 0x82 +#define ICMP_V6_LISTENER_REPORT 0x83 +#define ICMP_V6_LISTENER_DONE 0x84 +#define ICMP_V6_ROUTER_SOLICIT 0x85 +#define ICMP_V6_ROUTER_ADVERTISE 0x86 +#define ICMP_V6_NEIGHBOR_SOLICIT 0x87 +#define ICMP_V6_NEIGHBOR_ADVERTISE 0x88 +#define ICMP_V6_REDIRECT 0x89 +#define ICMP_V6_LISTENER_REPORT_2 0x8F + +//*********************************************************** +// ICMPv6 code definitions for ICMP_V6_DEST_UNREACHABLE +//*********************************************************** +#define ICMP_V6_NO_ROUTE_TO_DEST 0x0 +#define ICMP_V6_COMM_PROHIBITED 0x1 +#define ICMP_V6_BEYOND_SCOPE 0x2 +#define ICMP_V6_ADDR_UNREACHABLE 0x3 +#define ICMP_V6_PORT_UNREACHABLE 0x4 +#define ICMP_V6_SOURCE_ADDR_FAILED 0x5 +#define ICMP_V6_ROUTE_REJECTED 0x6 + +//*********************************************************** +// ICMPv6 code definitions for ICMP_V6_TIME_EXCEEDED +//*********************************************************** +#define ICMP_V6_TIMEOUT_HOP_LIMIT 0x0 +#define ICMP_V6_TIMEOUT_REASSEMBLE 0x1 + +//*********************************************************** +// ICMPv6 code definitions for ICMP_V6_PARAMETER_PROBLEM +//*********************************************************** +#define ICMP_V6_ERRONEOUS_HEADER 0x0 +#define ICMP_V6_UNRECOGNIZE_NEXT_HDR 0x1 +#define ICMP_V6_UNRECOGNIZE_OPTION 0x2 + +typedef struct { + BOOLEAN IsStarted; + UINT32 MaxPacketSize; + EFI_IP6_CONFIG_DATA ConfigData; + BOOLEAN IsConfigured; + UINT32 AddressCount; + EFI_IP6_ADDRESS_INFO *AddressList; + UINT32 GroupCount; + EFI_IPv6_ADDRESS *GroupTable; + UINT32 RouteCount; + EFI_IP6_ROUTE_TABLE *RouteTable; + UINT32 NeighborCount; + EFI_IP6_NEIGHBOR_CACHE *NeighborCache; + UINT32 PrefixCount; + EFI_IP6_ADDRESS_INFO *PrefixTable; + UINT32 IcmpTypeCount; + EFI_IP6_ICMP_TYPE *IcmpTypeList; +} EFI_IP6_MODE_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_GET_MODE_DATA) ( + IN struct _EFI_IP6 *This, + OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_CONFIGURE) ( + IN struct _EFI_IP6 *This, + IN EFI_IP6_CONFIG_DATA *Ip6ConfigData OPTIONAL + ); +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_GROUPS) ( + IN struct _EFI_IP6 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv6_ADDRESS *GroupAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_ROUTES) ( + IN struct _EFI_IP6 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv6_ADDRESS *Destination OPTIONAL, + IN UINT8 PrefixLength, + IN EFI_IPv6_ADDRESS *GatewayAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_NEIGHBORS) ( + IN struct _EFI_IP6 *This, + IN BOOLEAN DeleteFlag, + IN EFI_IPv6_ADDRESS *TargetIp6Address, + IN EFI_MAC_ADDRESS *TargetLinkAddress OPTIONAL, + IN UINT32 Timeout, + IN BOOLEAN Override + ); + +typedef struct _EFI_IP6_FRAGMENT_DATA { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_IP6_FRAGMENT_DATA; + +typedef struct _EFI_IP6_OVERRIDE_DATA { + UINT8 Protocol; + UINT8 HopLimit; + UINT32 FlowLabel; +} EFI_IP6_OVERRIDE_DATA; + +typedef struct _EFI_IP6_TRANSMIT_DATA { + EFI_IPv6_ADDRESS DestinationAddress; + EFI_IP6_OVERRIDE_DATA *OverrideData; + UINT32 ExtHdrsLength; + VOID *ExtHdrs; + UINT8 NextHeader; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_IP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP6_TRANSMIT_DATA; + +#pragma pack(1) +typedef struct _EFI_IP6_HEADER { + UINT8 TrafficClassH:4; + UINT8 Version:4; + UINT8 FlowLabelH:4; + UINT8 TrafficClassL:4; + UINT16 FlowLabelL; + UINT16 PayloadLength; + UINT8 NextHeader; + UINT8 HopLimit; + EFI_IPv6_ADDRESS SourceAddress; + EFI_IPv6_ADDRESS DestinationAddress; +} EFI_IP6_HEADER; +#pragma pack() + +typedef struct _EFI_IP6_RECEIVE_DATA { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + UINT32 HeaderLength; + EFI_IP6_HEADER *Header; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_IP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_IP6_RECEIVE_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_IP6_RECEIVE_DATA *RxData; + EFI_IP6_TRANSMIT_DATA *TxData; + } Packet; +} EFI_IP6_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_TRANSMIT) ( + IN struct _EFI_IP6 *This, + IN EFI_IP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_RECEIVE) ( + IN struct _EFI_IP6 *This, + IN EFI_IP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_CANCEL)( + IN struct _EFI_IP6 *This, + IN EFI_IP6_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP6_POLL) ( + IN struct _EFI_IP6 *This + ); + +typedef struct _EFI_IP6 { + EFI_IP6_GET_MODE_DATA GetModeData; + EFI_IP6_CONFIGURE Configure; + EFI_IP6_GROUPS Groups; + EFI_IP6_ROUTES Routes; + EFI_IP6_NEIGHBORS Neighbors; + EFI_IP6_TRANSMIT Transmit; + EFI_IP6_RECEIVE Receive; + EFI_IP6_CANCEL Cancel; + EFI_IP6_POLL Poll; +} EFI_IP6; + +#endif /* _EFI_IP_H */ diff --git a/efi64/include/efi/efilib.h b/efi64/include/efi/efilib.h new file mode 100644 index 00000000..e0c63758 --- /dev/null +++ b/efi64/include/efi/efilib.h @@ -0,0 +1,895 @@ +#ifndef _EFILIB_INCLUDE_ +#define _EFILIB_INCLUDE_ + +/*++ + +Copyright (c) 2000 Intel Corporation + +Module Name: + + efilib.h + +Abstract: + + EFI library functions + + + +Revision History + +--*/ + +#include "efidebug.h" +#include "efipart.h" +#include "efilibplat.h" +#include "efilink.h" +#include "efirtlib.h" +#include "pci22.h" +#include "libsmbios.h" + +// +// Public read-only data in the EFI library +// + +extern EFI_SYSTEM_TABLE *ST; +extern EFI_BOOT_SERVICES *BS; +extern EFI_RUNTIME_SERVICES *RT; + +extern EFI_GUID DevicePathProtocol; +extern EFI_GUID LoadedImageProtocol; +extern EFI_GUID TextInProtocol; +extern EFI_GUID TextOutProtocol; +extern EFI_GUID BlockIoProtocol; +extern EFI_GUID DiskIoProtocol; +extern EFI_GUID FileSystemProtocol; +extern EFI_GUID LoadFileProtocol; +extern EFI_GUID DeviceIoProtocol; +extern EFI_GUID VariableStoreProtocol; +extern EFI_GUID LegacyBootProtocol; +extern EFI_GUID UnicodeCollationProtocol; +extern EFI_GUID SerialIoProtocol; +extern EFI_GUID VgaClassProtocol; +extern EFI_GUID TextOutSpliterProtocol; +extern EFI_GUID ErrorOutSpliterProtocol; +extern EFI_GUID TextInSpliterProtocol; +extern EFI_GUID SimpleNetworkProtocol; +extern EFI_GUID PxeBaseCodeProtocol; +extern EFI_GUID PxeCallbackProtocol; +extern EFI_GUID NetworkInterfaceIdentifierProtocol; +extern EFI_GUID UiProtocol; +extern EFI_GUID InternalShellProtocol; +extern EFI_GUID PciIoProtocol; + +extern EFI_GUID EfiGlobalVariable; +extern EFI_GUID GenericFileInfo; +extern EFI_GUID FileSystemInfo; +extern EFI_GUID FileSystemVolumeLabelInfo; +extern EFI_GUID PcAnsiProtocol; +extern EFI_GUID Vt100Protocol; +extern EFI_GUID NullGuid; +extern EFI_GUID UnknownDevice; + +extern EFI_GUID EfiPartTypeSystemPartitionGuid; +extern EFI_GUID EfiPartTypeLegacyMbrGuid; + +extern EFI_GUID MpsTableGuid; +extern EFI_GUID AcpiTableGuid; +extern EFI_GUID SMBIOSTableGuid; +extern EFI_GUID SalSystemTableGuid; + +// +// EFI Variable strings +// +#define LOAD_OPTION_ACTIVE 0x00000001 + +#define VarLanguageCodes L"LangCodes" +#define VarLanguage L"Lang" +#define VarTimeout L"Timeout" +#define VarConsoleInp L"ConIn" +#define VarConsoleOut L"ConOut" +#define VarErrorOut L"ErrOut" +#define VarBootOption L"Boot%04x" +#define VarBootOrder L"BootOrder" +#define VarBootNext L"BootNext" +#define VarBootCurrent L"BootCurrent" +#define VarDriverOption L"Driver%04x" +#define VarDriverOrder L"DriverOrder" +#define VarConsoleInpDev L"ConInDev" +#define VarConsoleOutDev L"ConOutDev" +#define VarErrorOutDev L"ErrOutDev" + +#define LanguageCodeEnglish "eng" + +extern EFI_DEVICE_PATH RootDevicePath[]; +extern EFI_DEVICE_PATH EndDevicePath[]; +extern EFI_DEVICE_PATH EndInstanceDevicePath[]; + +// +// Other public data in the EFI library +// + +extern EFI_MEMORY_TYPE PoolAllocationType; + +// +// STATIC - Name is internal to the module +// INTERNAL - Name is internal to the component (i.e., directory) +// BOOTSERVCE - Name of a boot service function +// + +#define STATIC +#define INTERNAL +#define BOOTSERVICE + +// +// Prototypes +// + +VOID +InitializeLib ( + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable + ); + +VOID +InitializeUnicodeSupport ( + CHAR8 *LangCode + ); + +VOID +EFIDebugVariable ( + VOID + ); + +VOID +SetCrc ( + IN OUT EFI_TABLE_HEADER *Hdr + ); + +VOID +SetCrcAltSize ( + IN UINTN Size, + IN OUT EFI_TABLE_HEADER *Hdr + ); + +BOOLEAN +CheckCrc ( + IN UINTN MaxSize, + IN OUT EFI_TABLE_HEADER *Hdr + ); + +BOOLEAN +CheckCrcAltSize ( + IN UINTN MaxSize, + IN UINTN Size, + IN OUT EFI_TABLE_HEADER *Hdr + ); + +UINT32 +CalculateCrc ( + UINT8 *pt, + UINTN Size + ); + +VOID +ZeroMem ( + IN VOID *Buffer, + IN UINTN Size + ); + +VOID +SetMem ( + IN VOID *Buffer, + IN UINTN Size, + IN UINT8 Value + ); + +VOID +CopyMem ( + IN VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +CompareMem ( + IN CONST VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +StrCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2 + ); + +INTN +StrnCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2, + IN UINTN len + ); + +INTN +StriCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2 + ); + +VOID +StrLwr ( + IN CHAR16 *Str + ); + +VOID +StrUpr ( + IN CHAR16 *Str + ); + +VOID +StrCpy ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +VOID +StrCat ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +UINTN +StrLen ( + IN CONST CHAR16 *s1 + ); + +UINTN +StrSize ( + IN CONST CHAR16 *s1 + ); + +CHAR16 * +StrDuplicate ( + IN CONST CHAR16 *Src + ); + +UINTN +strlena ( + IN CONST CHAR8 *s1 + ); + +UINTN +strcmpa ( + IN CONST CHAR8 *s1, + IN CONST CHAR8 *s2 + ); + +UINTN +strncmpa ( + IN CONST CHAR8 *s1, + IN CONST CHAR8 *s2, + IN UINTN len + ); + +UINTN +xtoi ( + CONST CHAR16 *str + ); + +UINTN +Atoi ( + CONST CHAR16 *str + ); + +BOOLEAN +MetaMatch ( + IN CHAR16 *String, + IN CHAR16 *Pattern + ); + +BOOLEAN +MetaiMatch ( + IN CHAR16 *String, + IN CHAR16 *Pattern + ); + +UINT64 +LShiftU64 ( + IN UINT64 Operand, + IN UINTN Count + ); + +UINT64 +RShiftU64 ( + IN UINT64 Operand, + IN UINTN Count + ); + +UINT64 +MultU64x32 ( + IN UINT64 Multiplicand, + IN UINTN Multiplier + ); + +UINT64 +DivU64x32 ( + IN UINT64 Dividend, + IN UINTN Divisor, + OUT UINTN *Remainder OPTIONAL + ); + +VOID +InitializeLock ( + IN OUT FLOCK *Lock, + IN EFI_TPL Priority + ); + +VOID +AcquireLock ( + IN FLOCK *Lock + ); + +VOID +ReleaseLock ( + IN FLOCK *Lock + ); + + +INTN +CompareGuid( + IN EFI_GUID *Guid1, + IN EFI_GUID *Guid2 + ); + +VOID * +AllocatePool ( + IN UINTN Size + ); + +VOID * +AllocateZeroPool ( + IN UINTN Size + ); + +VOID * +ReallocatePool ( + IN VOID *OldPool, + IN UINTN OldSize, + IN UINTN NewSize + ); + +VOID +FreePool ( + IN VOID *p + ); + + +VOID +Output ( + IN CHAR16 *Str + ); + +VOID +Input ( + IN CHAR16 *Prompt OPTIONAL, + OUT CHAR16 *InStr, + IN UINTN StrLen + ); + +VOID +IInput ( + IN SIMPLE_TEXT_OUTPUT_INTERFACE *ConOut, + IN SIMPLE_INPUT_INTERFACE *ConIn, + IN CHAR16 *Prompt OPTIONAL, + OUT CHAR16 *InStr, + IN UINTN StrLen + ); + +UINTN +Print ( + IN CHAR16 *fmt, + ... + ); + +UINTN +SPrint ( + OUT CHAR16 *Str, + IN UINTN StrSize, + IN CHAR16 *fmt, + ... + ); + +CHAR16 * +PoolPrint ( + IN CHAR16 *fmt, + ... + ); + +typedef struct { + CHAR16 *str; + UINTN len; + UINTN maxlen; +} POOL_PRINT; + +CHAR16 * +CatPrint ( + IN OUT POOL_PRINT *Str, + IN CHAR16 *fmt, + ... + ); + +UINTN +PrintAt ( + IN UINTN Column, + IN UINTN Row, + IN CHAR16 *fmt, + ... + ); + +UINTN +IPrint ( + IN SIMPLE_TEXT_OUTPUT_INTERFACE *Out, + IN CHAR16 *fmt, + ... + ); + +UINTN +IPrintAt ( + IN SIMPLE_TEXT_OUTPUT_INTERFACE *Out, + IN UINTN Column, + IN UINTN Row, + IN CHAR16 *fmt, + ... + ); + +UINTN +APrint ( + IN CHAR8 *fmt, + ... + ); + +VOID +ValueToHex ( + IN CHAR16 *Buffer, + IN UINT64 v + ); + +VOID +ValueToString ( + IN CHAR16 *Buffer, + IN BOOLEAN Comma, + IN INT64 v + ); + +VOID +TimeToString ( + OUT CHAR16 *Buffer, + IN EFI_TIME *Time + ); + +VOID +GuidToString ( + OUT CHAR16 *Buffer, + IN EFI_GUID *Guid + ); + +VOID +StatusToString ( + OUT CHAR16 *Buffer, + EFI_STATUS Status + ); + +VOID +DumpHex ( + IN UINTN Indent, + IN UINTN Offset, + IN UINTN DataSize, + IN VOID *UserData + ); + +BOOLEAN +GrowBuffer( + IN OUT EFI_STATUS *Status, + IN OUT VOID **Buffer, + IN UINTN BufferSize + ); + +EFI_MEMORY_DESCRIPTOR * +LibMemoryMap ( + OUT UINTN *NoEntries, + OUT UINTN *MapKey, + OUT UINTN *DescriptorSize, + OUT UINT32 *DescriptorVersion + ); + +VOID * +LibGetVariable ( + IN CHAR16 *Name, + IN EFI_GUID *VendorGuid + ); + +VOID * +LibGetVariableAndSize ( + IN CHAR16 *Name, + IN EFI_GUID *VendorGuid, + OUT UINTN *VarSize + ); + +EFI_STATUS +LibDeleteVariable ( + IN CHAR16 *VarName, + IN EFI_GUID *VarGuid + ); + +EFI_STATUS +LibSetNVVariable ( + IN CHAR16 *VarName, + IN EFI_GUID *VarGuid, + IN UINTN DataSize, + IN VOID *Data + ); + +EFI_STATUS +LibSetVariable ( + IN CHAR16 *VarName, + IN EFI_GUID *VarGuid, + IN UINTN DataSize, + IN VOID *Data + ); +EFI_STATUS +LibInsertToTailOfBootOrder ( + IN UINT16 BootOption, + IN BOOLEAN OnlyInsertIfEmpty + ); + +EFI_STATUS +LibLocateProtocol ( + IN EFI_GUID *ProtocolGuid, + OUT VOID **Interface + ); + +EFI_STATUS +LibLocateHandle ( + IN EFI_LOCATE_SEARCH_TYPE SearchType, + IN EFI_GUID *Protocol OPTIONAL, + IN VOID *SearchKey OPTIONAL, + IN OUT UINTN *NoHandles, + OUT EFI_HANDLE **Buffer + ); + +EFI_STATUS +LibLocateHandleByDiskSignature ( + IN UINT8 MBRType, + IN UINT8 SignatureType, + IN VOID *Signature, + IN OUT UINTN *NoHandles, + OUT EFI_HANDLE **Buffer + ); + +EFI_STATUS +LibInstallProtocolInterfaces ( + IN OUT EFI_HANDLE *Handle, + ... + ); + +VOID +LibUninstallProtocolInterfaces ( + IN EFI_HANDLE Handle, + ... + ); + +EFI_STATUS +LibReinstallProtocolInterfaces ( + IN OUT EFI_HANDLE *Handle, + ... + ); + +EFI_EVENT +LibCreateProtocolNotifyEvent ( + IN EFI_GUID *ProtocolGuid, + IN EFI_TPL NotifyTpl, + IN EFI_EVENT_NOTIFY NotifyFunction, + IN VOID *NotifyContext, + OUT VOID *Registration + ); + +EFI_STATUS +WaitForSingleEvent ( + IN EFI_EVENT Event, + IN UINT64 Timeout OPTIONAL + ); + +VOID +WaitForEventWithTimeout ( + IN EFI_EVENT Event, + IN UINTN Timeout, + IN UINTN Row, + IN UINTN Column, + IN CHAR16 *String, + IN EFI_INPUT_KEY TimeoutKey, + OUT EFI_INPUT_KEY *Key + ); + +EFI_FILE_HANDLE +LibOpenRoot ( + IN EFI_HANDLE DeviceHandle + ); + +EFI_FILE_INFO * +LibFileInfo ( + IN EFI_FILE_HANDLE FHand + ); + +EFI_FILE_SYSTEM_INFO * +LibFileSystemInfo ( + IN EFI_FILE_HANDLE FHand + ); + +EFI_FILE_SYSTEM_VOLUME_LABEL_INFO * +LibFileSystemVolumeLabelInfo ( + IN EFI_FILE_HANDLE FHand + ); + +BOOLEAN +ValidMBR( + IN MASTER_BOOT_RECORD *Mbr, + IN EFI_BLOCK_IO *BlkIo + ); + +BOOLEAN +LibMatchDevicePaths ( + IN EFI_DEVICE_PATH *Multi, + IN EFI_DEVICE_PATH *Single + ); + +EFI_DEVICE_PATH * +LibDuplicateDevicePathInstance ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_DEVICE_PATH * +DevicePathFromHandle ( + IN EFI_HANDLE Handle + ); + +EFI_DEVICE_PATH * +DevicePathInstance ( + IN OUT EFI_DEVICE_PATH **DevicePath, + OUT UINTN *Size + ); + +UINTN +DevicePathInstanceCount ( + IN EFI_DEVICE_PATH *DevicePath + ); + +EFI_DEVICE_PATH * +AppendDevicePath ( + IN EFI_DEVICE_PATH *Src1, + IN EFI_DEVICE_PATH *Src2 + ); + +EFI_DEVICE_PATH * +AppendDevicePathNode ( + IN EFI_DEVICE_PATH *Src1, + IN EFI_DEVICE_PATH *Src2 + ); + +EFI_DEVICE_PATH* +AppendDevicePathInstance ( + IN EFI_DEVICE_PATH *Src, + IN EFI_DEVICE_PATH *Instance + ); + +EFI_DEVICE_PATH * +FileDevicePath ( + IN EFI_HANDLE Device OPTIONAL, + IN CHAR16 *FileName + ); + +UINTN +DevicePathSize ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_DEVICE_PATH * +DuplicateDevicePath ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_DEVICE_PATH * +UnpackDevicePath ( + IN EFI_DEVICE_PATH *DevPath + ); + +EFI_STATUS +LibDevicePathToInterface ( + IN EFI_GUID *Protocol, + IN EFI_DEVICE_PATH *FilePath, + OUT VOID **Interface + ); + +CHAR16 * +DevicePathToStr ( + EFI_DEVICE_PATH *DevPath + ); + +// +// BugBug: I need my own include files +// +typedef struct { + UINT8 Register; + UINT8 Function; + UINT8 Device; + UINT8 Bus; + UINT32 Reserved; +} EFI_ADDRESS; + +typedef union { + UINT64 Address; + EFI_ADDRESS EfiAddress; +} EFI_PCI_ADDRESS_UNION; + + +EFI_STATUS +PciFindDeviceClass ( + IN OUT EFI_PCI_ADDRESS_UNION *Address, + IN UINT8 BaseClass, + IN UINT8 SubClass + ); + +EFI_STATUS +PciFindDevice ( + IN OUT EFI_PCI_ADDRESS_UNION *DeviceAddress, + IN UINT16 VendorId, + IN UINT16 DeviceId, + IN OUT PCI_TYPE00 *Pci + ); + +// +// SIMPLE_READ_FILE object used to access files +// + +typedef VOID *SIMPLE_READ_FILE; + +EFI_STATUS +OpenSimpleReadFile ( + IN BOOLEAN BootPolicy, + IN VOID *SourceBuffer OPTIONAL, + IN UINTN SourceSize, + IN OUT EFI_DEVICE_PATH **FilePath, + OUT EFI_HANDLE *DeviceHandle, + OUT SIMPLE_READ_FILE *SimpleReadHandle + ); + +EFI_STATUS +ReadSimpleReadFile ( + IN SIMPLE_READ_FILE SimpleReadHandle, + IN UINTN Offset, + IN OUT UINTN *ReadSize, + OUT VOID *Buffer + ); + + +VOID +CloseSimpleReadFile ( + IN SIMPLE_READ_FILE SimpleReadHandle + ); + +VOID +InitializeGuid ( + VOID + ); + +UINT8 +DecimaltoBCD( + IN UINT8 DecValue + ); + +UINT8 +BCDtoDecimal( + IN UINT8 BcdValue + ); + +EFI_STATUS +LibGetSystemConfigurationTable( + IN EFI_GUID *TableGuid, + IN OUT VOID **Table + ); + +BOOLEAN +LibIsValidTextGraphics ( + IN CHAR16 Graphic, + OUT CHAR8 *PcAnsi, OPTIONAL + OUT CHAR8 *Ascii OPTIONAL + ); + +BOOLEAN +IsValidAscii ( + IN CHAR16 Ascii + ); + +BOOLEAN +IsValidEfiCntlChar ( + IN CHAR16 c + ); + +CHAR16 * +LibGetUiString ( + IN EFI_HANDLE Handle, + IN UI_STRING_TYPE StringType, + IN ISO_639_2 *LangCode, + IN BOOLEAN ReturnDevicePathStrOnMismatch + ); + +CHAR8* +LibGetSmbiosString ( + IN SMBIOS_STRUCTURE_POINTER *Smbios, + IN UINT16 StringNumber + ); + +EFI_STATUS +LibGetSmbiosSystemGuidAndSerialNumber ( + IN EFI_GUID *SystemGuid, + OUT CHAR8 **SystemSerialNumber + ); + + +EFI_STATUS +InitializeGlobalIoDevice ( + IN EFI_DEVICE_PATH *DevicePath, + IN EFI_GUID *Protocol, + IN CHAR8 *ErrorStr, + OUT EFI_DEVICE_IO_INTERFACE **GlobalIoFncs + ); + +UINT32 +ReadPort ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port + ); + +UINT32 +WritePort ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port, + IN UINTN Data + ); + +UINT32 +ReadPciConfig ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port + ); + +UINT32 +WritePciConfig ( + IN EFI_DEVICE_IO_INTERFACE *GlobalIoFncs, + IN EFI_IO_WIDTH Width, + IN UINTN Port, + IN UINTN Data + ); + +extern EFI_DEVICE_IO_INTERFACE *GlobalIoFncs; + +#define outp(_Port, _DataByte) (UINT8)WritePort(GlobalIoFncs, IO_UINT8, (UINTN)_Port, (UINTN)_DataByte) +#define inp(_Port) (UINT8)ReadPort(GlobalIoFncs, IO_UINT8, (UINTN)_Port) +#define outpw(_Port, _DataByte) (UINT16)WritePort(GlobalIoFncs, IO_UINT16, (UINTN)_Port, (UINTN)_DataByte) +#define inpw(_Port) (UINT16)ReadPort(GlobalIoFncs, IO_UINT16, (UINTN)_Port) +#define outpd(_Port, _DataByte) (UINT32)WritePort(GlobalIoFncs, IO_UINT32, (UINTN)_Port, (UINTN)_DataByte) +#define inpd(_Port) (UINT32)ReadPort(GlobalIoFncs, IO_UINT32, (UINTN)_Port) + +#define writepci8(_Addr, _DataByte) (UINT8)WritePciConfig(GlobalIoFncs, IO_UINT8, (UINTN)_Addr, (UINTN)_DataByte) +#define readpci8(_Addr) (UINT8)ReadPciConfig(GlobalIoFncs, IO_UINT8, (UINTN)_Addr) +#define writepci16(_Addr, _DataByte) (UINT16)WritePciConfig(GlobalIoFncs, IO_UINT16, (UINTN)_Addr, (UINTN)_DataByte) +#define readpci16(_Addr) (UINT16)ReadPciConfig(GlobalIoFncs, IO_UINT16, (UINTN)_Addr) +#define writepci32(_Addr, _DataByte) (UINT32)WritePciConfig(GlobalIoFncs, IO_UINT32, (UINTN)_Addr, (UINTN)_DataByte) +#define readpci32(_Addr) (UINT32)ReadPciConfig(GlobalIoFncs, IO_UINT32, (UINTN)_Addr) + +#define Pause() WaitForSingleEvent (ST->ConIn->WaitForKey, 0) +#define Port80(_PostCode) GlobalIoFncs->Io.Write (GlobalIoFncs, IO_UINT16, (UINT64)0x80, 1, &(_PostCode)) + +#endif diff --git a/efi64/include/efi/efilink.h b/efi64/include/efi/efilink.h new file mode 100644 index 00000000..b2ff4fa2 --- /dev/null +++ b/efi64/include/efi/efilink.h @@ -0,0 +1,177 @@ +#ifndef _EFI_LINK_H +#define _EFI_LINK_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + link.h (renamed efilink.h to avoid conflicts) + +Abstract: + + EFI link list macro's + + + +Revision History + +--*/ + +#ifndef EFI_NT_EMUL + +// +// List entry - doubly linked list +// + +typedef struct _LIST_ENTRY { + struct _LIST_ENTRY *Flink; + struct _LIST_ENTRY *Blink; +} LIST_ENTRY; + +#endif + + +// +// VOID +// InitializeListHead( +// LIST_ENTRY *ListHead +// ); +// + +#define InitializeListHead(ListHead) \ + (ListHead)->Flink = ListHead; \ + (ListHead)->Blink = ListHead; + +// +// BOOLEAN +// IsListEmpty( +// PLIST_ENTRY ListHead +// ); +// + +#define IsListEmpty(ListHead) \ + ((ListHead)->Flink == (ListHead)) + +// +// VOID +// RemoveEntryList( +// PLIST_ENTRY Entry +// ); +// + +#define _RemoveEntryList(Entry) { \ + LIST_ENTRY *_Blink, *_Flink; \ + _Flink = (Entry)->Flink; \ + _Blink = (Entry)->Blink; \ + _Blink->Flink = _Flink; \ + _Flink->Blink = _Blink; \ + } + +#if EFI_DEBUG + #define RemoveEntryList(Entry) \ + _RemoveEntryList(Entry); \ + (Entry)->Flink = (LIST_ENTRY *) BAD_POINTER; \ + (Entry)->Blink = (LIST_ENTRY *) BAD_POINTER; +#else + #define RemoveEntryList(Entry) \ + _RemoveEntryList(Entry); +#endif + +// +// VOID +// InsertTailList( +// PLIST_ENTRY ListHead, +// PLIST_ENTRY Entry +// ); +// + +#define InsertTailList(ListHead,Entry) {\ + LIST_ENTRY *_ListHead, *_Blink; \ + _ListHead = (ListHead); \ + _Blink = _ListHead->Blink; \ + (Entry)->Flink = _ListHead; \ + (Entry)->Blink = _Blink; \ + _Blink->Flink = (Entry); \ + _ListHead->Blink = (Entry); \ + } + +// +// VOID +// InsertHeadList( +// PLIST_ENTRY ListHead, +// PLIST_ENTRY Entry +// ); +// + +#define InsertHeadList(ListHead,Entry) {\ + LIST_ENTRY *_ListHead, *_Flink; \ + _ListHead = (ListHead); \ + _Flink = _ListHead->Flink; \ + (Entry)->Flink = _Flink; \ + (Entry)->Blink = _ListHead; \ + _Flink->Blink = (Entry); \ + _ListHead->Flink = (Entry); \ + } + +// VOID +// SwapListEntries( +// PLIST_ENTRY Entry1, +// PLIST_ENTRY Entry2 +// ); +// +// Put Entry2 before Entry1 +// +#define SwapListEntries(Entry1,Entry2) {\ + LIST_ENTRY *Entry1Flink, *Entry1Blink; \ + LIST_ENTRY *Entry2Flink, *Entry2Blink; \ + Entry2Flink = (Entry2)->Flink; \ + Entry2Blink = (Entry2)->Blink; \ + Entry1Flink = (Entry1)->Flink; \ + Entry1Blink = (Entry1)->Blink; \ + Entry2Blink->Flink = Entry2Flink; \ + Entry2Flink->Blink = Entry2Blink; \ + (Entry2)->Flink = Entry1; \ + (Entry2)->Blink = Entry1Blink; \ + Entry1Blink->Flink = (Entry2); \ + (Entry1)->Blink = (Entry2); \ + } + +// +// EFI_FIELD_OFFSET - returns the byte offset to a field within a structure +// + +#define EFI_FIELD_OFFSET(TYPE,Field) ((UINTN)(&(((TYPE *) 0)->Field))) + +// +// CONTAINING_RECORD - returns a pointer to the structure +// from one of it's elements. +// + +#define _CR(Record, TYPE, Field) \ + ((TYPE *) ( (CHAR8 *)(Record) - (CHAR8 *) &(((TYPE *) 0)->Field))) + +#if EFI_DEBUG + #define CR(Record, TYPE, Field, Sig) \ + _CR(Record, TYPE, Field)->Signature != Sig ? \ + (TYPE *) ASSERT_STRUCT(_CR(Record, TYPE, Field), Record) : \ + _CR(Record, TYPE, Field) +#else + #define CR(Record, TYPE, Field, Signature) \ + _CR(Record, TYPE, Field) +#endif + + +// +// A lock structure +// + +typedef struct _FLOCK { + EFI_TPL Tpl; + EFI_TPL OwnerTpl; + UINTN Lock; +} FLOCK; + +#endif + diff --git a/efi64/include/efi/efinet.h b/efi64/include/efi/efinet.h new file mode 100644 index 00000000..b2e5aa8a --- /dev/null +++ b/efi64/include/efi/efinet.h @@ -0,0 +1,340 @@ +#ifndef _EFINET_H +#define _EFINET_H + + +/*++ +Copyright (c) 1999 Intel Corporation + +Module Name: + efinet.h + +Abstract: + EFI Simple Network protocol + +Revision History +--*/ + + +/////////////////////////////////////////////////////////////////////////////// +// +// Simple Network Protocol +// + +#define EFI_SIMPLE_NETWORK_PROTOCOL \ + { 0xA19832B9, 0xAC25, 0x11D3, {0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D} } + + +INTERFACE_DECL(_EFI_SIMPLE_NETWORK); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef struct { + // + // Total number of frames received. Includes frames with errors and + // dropped frames. + // + UINT64 RxTotalFrames; + + // + // Number of valid frames received and copied into receive buffers. + // + UINT64 RxGoodFrames; + + // + // Number of frames below the minimum length for the media. + // This would be <64 for ethernet. + // + UINT64 RxUndersizeFrames; + + // + // Number of frames longer than the maxminum length for the + // media. This would be >1500 for ethernet. + // + UINT64 RxOversizeFrames; + + // + // Valid frames that were dropped because receive buffers were full. + // + UINT64 RxDroppedFrames; + + // + // Number of valid unicast frames received and not dropped. + // + UINT64 RxUnicastFrames; + + // + // Number of valid broadcast frames received and not dropped. + // + UINT64 RxBroadcastFrames; + + // + // Number of valid mutlicast frames received and not dropped. + // + UINT64 RxMulticastFrames; + + // + // Number of frames w/ CRC or alignment errors. + // + UINT64 RxCrcErrorFrames; + + // + // Total number of bytes received. Includes frames with errors + // and dropped frames. + // + UINT64 RxTotalBytes; + + // + // Transmit statistics. + // + UINT64 TxTotalFrames; + UINT64 TxGoodFrames; + UINT64 TxUndersizeFrames; + UINT64 TxOversizeFrames; + UINT64 TxDroppedFrames; + UINT64 TxUnicastFrames; + UINT64 TxBroadcastFrames; + UINT64 TxMulticastFrames; + UINT64 TxCrcErrorFrames; + UINT64 TxTotalBytes; + + // + // Number of collisions detection on this subnet. + // + UINT64 Collisions; + + // + // Number of frames destined for unsupported protocol. + // + UINT64 UnsupportedProtocol; + +} EFI_NETWORK_STATISTICS; + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef enum { + EfiSimpleNetworkStopped, + EfiSimpleNetworkStarted, + EfiSimpleNetworkInitialized, + EfiSimpleNetworkMaxState +} EFI_SIMPLE_NETWORK_STATE; + +/////////////////////////////////////////////////////////////////////////////// +// + +#define EFI_SIMPLE_NETWORK_RECEIVE_UNICAST 0x01 +#define EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST 0x02 +#define EFI_SIMPLE_NETWORK_RECEIVE_BROADCAST 0x04 +#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS 0x08 +#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS_MULTICAST 0x10 + +/////////////////////////////////////////////////////////////////////////////// +// + +#define EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT 0x01 +#define EFI_SIMPLE_NETWORK_TRANSMIT_INTERRUPT 0x02 +#define EFI_SIMPLE_NETWORK_COMMAND_INTERRUPT 0x04 +#define EFI_SIMPLE_NETWORK_SOFTWARE_INTERRUPT 0x08 + +/////////////////////////////////////////////////////////////////////////////// +// +#define MAX_MCAST_FILTER_CNT 16 +typedef struct { + UINT32 State; + UINT32 HwAddressSize; + UINT32 MediaHeaderSize; + UINT32 MaxPacketSize; + UINT32 NvRamSize; + UINT32 NvRamAccessSize; + UINT32 ReceiveFilterMask; + UINT32 ReceiveFilterSetting; + UINT32 MaxMCastFilterCount; + UINT32 MCastFilterCount; + EFI_MAC_ADDRESS MCastFilter[MAX_MCAST_FILTER_CNT]; + EFI_MAC_ADDRESS CurrentAddress; + EFI_MAC_ADDRESS BroadcastAddress; + EFI_MAC_ADDRESS PermanentAddress; + UINT8 IfType; + BOOLEAN MacAddressChangeable; + BOOLEAN MultipleTxSupported; + BOOLEAN MediaPresentSupported; + BOOLEAN MediaPresent; +} EFI_SIMPLE_NETWORK_MODE; + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_START) ( + IN struct _EFI_SIMPLE_NETWORK *This +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_STOP) ( + IN struct _EFI_SIMPLE_NETWORK *This +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_INITIALIZE) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN UINTN ExtraRxBufferSize OPTIONAL, + IN UINTN ExtraTxBufferSize OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_RESET) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN ExtendedVerification +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_SHUTDOWN) ( + IN struct _EFI_SIMPLE_NETWORK *This +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_RECEIVE_FILTERS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN UINT32 Enable, + IN UINT32 Disable, + IN BOOLEAN ResetMCastFilter, + IN UINTN MCastFilterCnt OPTIONAL, + IN EFI_MAC_ADDRESS *MCastFilter OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_STATION_ADDRESS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN Reset, + IN EFI_MAC_ADDRESS *New OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_STATISTICS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN Reset, + IN OUT UINTN *StatisticsSize OPTIONAL, + OUT EFI_NETWORK_STATISTICS *StatisticsTable OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN IPv6, + IN EFI_IP_ADDRESS *IP, + OUT EFI_MAC_ADDRESS *MAC +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_NVDATA) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN BOOLEAN ReadWrite, + IN UINTN Offset, + IN UINTN BufferSize, + IN OUT VOID *Buffer +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_GET_STATUS) ( + IN struct _EFI_SIMPLE_NETWORK *This, + OUT UINT32 *InterruptStatus OPTIONAL, + OUT VOID **TxBuf OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_TRANSMIT) ( + IN struct _EFI_SIMPLE_NETWORK *This, + IN UINTN HeaderSize, + IN UINTN BufferSize, + IN VOID *Buffer, + IN EFI_MAC_ADDRESS *SrcAddr OPTIONAL, + IN EFI_MAC_ADDRESS *DestAddr OPTIONAL, + IN UINT16 *Protocol OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_SIMPLE_NETWORK_RECEIVE) ( + IN struct _EFI_SIMPLE_NETWORK *This, + OUT UINTN *HeaderSize OPTIONAL, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer, + OUT EFI_MAC_ADDRESS *SrcAddr OPTIONAL, + OUT EFI_MAC_ADDRESS *DestAddr OPTIONAL, + OUT UINT16 *Protocol OPTIONAL +); + +/////////////////////////////////////////////////////////////////////////////// +// + +#define EFI_SIMPLE_NETWORK_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_SIMPLE_NETWORK { + UINT64 Revision; + EFI_SIMPLE_NETWORK_START Start; + EFI_SIMPLE_NETWORK_STOP Stop; + EFI_SIMPLE_NETWORK_INITIALIZE Initialize; + EFI_SIMPLE_NETWORK_RESET Reset; + EFI_SIMPLE_NETWORK_SHUTDOWN Shutdown; + EFI_SIMPLE_NETWORK_RECEIVE_FILTERS ReceiveFilters; + EFI_SIMPLE_NETWORK_STATION_ADDRESS StationAddress; + EFI_SIMPLE_NETWORK_STATISTICS Statistics; + EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC MCastIpToMac; + EFI_SIMPLE_NETWORK_NVDATA NvData; + EFI_SIMPLE_NETWORK_GET_STATUS GetStatus; + EFI_SIMPLE_NETWORK_TRANSMIT Transmit; + EFI_SIMPLE_NETWORK_RECEIVE Receive; + EFI_EVENT WaitForPacket; + EFI_SIMPLE_NETWORK_MODE *Mode; +} EFI_SIMPLE_NETWORK; + +#endif /* _EFINET_H */ diff --git a/efi64/include/efi/efipart.h b/efi64/include/efi/efipart.h new file mode 100644 index 00000000..d4c55731 --- /dev/null +++ b/efi64/include/efi/efipart.h @@ -0,0 +1,61 @@ +#ifndef _EFI_PART_H +#define _EFI_PART_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efipart.h + +Abstract: + Info about disk partitions and Master Boot Records + + + + +Revision History + +--*/ + +// +// +// + +#define EFI_PARTITION 0xef +#define MBR_SIZE 512 + +#pragma pack(1) + +typedef struct { + UINT8 BootIndicator; + UINT8 StartHead; + UINT8 StartSector; + UINT8 StartTrack; + UINT8 OSIndicator; + UINT8 EndHead; + UINT8 EndSector; + UINT8 EndTrack; + UINT8 StartingLBA[4]; + UINT8 SizeInLBA[4]; +} MBR_PARTITION_RECORD; + +#define EXTRACT_UINT32(D) (UINT32)(D[0] | (D[1] << 8) | (D[2] << 16) | (D[3] << 24)) + +#define MBR_SIGNATURE 0xaa55 +#define MIN_MBR_DEVICE_SIZE 0x80000 +#define MBR_ERRATA_PAD 0x40000 // 128 MB + +#define MAX_MBR_PARTITIONS 4 +typedef struct { + UINT8 BootStrapCode[440]; + UINT8 UniqueMbrSignature[4]; + UINT8 Unknown[2]; + MBR_PARTITION_RECORD Partition[MAX_MBR_PARTITIONS]; + UINT16 Signature; +} MASTER_BOOT_RECORD; +#pragma pack() + + +#endif diff --git a/efi64/include/efi/efipciio.h b/efi64/include/efi/efipciio.h new file mode 100644 index 00000000..0724f957 --- /dev/null +++ b/efi64/include/efi/efipciio.h @@ -0,0 +1,219 @@ +#ifndef _EFI_PCI_IO_H +#define _EFI_PCI_IO_H + +#define EFI_PCI_IO_PROTOCOL \ + { 0x4cf5b200, 0x68b8, 0x4ca5, {0x9e, 0xec, 0xb2, 0x3e, 0x3f, 0x50, 0x02, 0x9a} } + +INTERFACE_DECL(_EFI_PCI_IO); + +typedef enum { + EfiPciIoWidthUint8, + EfiPciIoWidthUint16, + EfiPciIoWidthUint32, + EfiPciIoWidthUint64, + EfiPciIoWidthFifoUint8, + EfiPciIoWidthFifoUint16, + EfiPciIoWidthFifoUint32, + EfiPciIoWidthFifoUint64, + EfiPciIoWidthFillUint8, + EfiPciIoWidthFillUint16, + EfiPciIoWidthFillUint32, + EfiPciIoWidthFillUint64, + EfiPciIoWidthMaximum +} EFI_PCI_IO_PROTOCOL_WIDTH; + +#define EFI_PCI_IO_PASS_THROUGH_BAR 0xff + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_POLL_IO_MEM) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT8 BarIndex, + IN UINT64 Offset, + IN UINT64 Mask, + IN UINT64 Value, + IN UINT64 Delay, + OUT UINT64 *Result + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_IO_MEM) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT8 BarIndex, + IN UINT64 Offset, + IN UINTN Count, + IN OUT VOID *Buffer +); + +typedef struct { + EFI_PCI_IO_PROTOCOL_IO_MEM Read; + EFI_PCI_IO_PROTOCOL_IO_MEM Write; +} EFI_PCI_IO_PROTOCOL_ACCESS; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_CONFIG) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT32 Offset, + IN UINTN Count, + IN OUT VOID *Buffer +); + +typedef struct { + EFI_PCI_IO_PROTOCOL_CONFIG Read; + EFI_PCI_IO_PROTOCOL_CONFIG Write; +} EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_COPY_MEM) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_WIDTH Width, + IN UINT8 DestBarIndex, + IN UINT64 DestOffset, + IN UINT8 SrcBarIndex, + IN UINT64 SrcOffset, + IN UINTN Count + ); + +typedef enum { + EfiPciIoOperationBusMasterRead, + EfiPciIoOperationBusMasterWrite, + EfiPciIoOperationBusMasterCommonBuffer, + EfiPciIoOperationMaximum +} EFI_PCI_IO_PROTOCOL_OPERATION; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_MAP) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_OPERATION Operation, + IN VOID *HostAddress, + IN OUT UINTN *NumberOfBytes, + OUT EFI_PHYSICAL_ADDRESS *DeviceAddress, + OUT VOID **Mapping + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_UNMAP) ( + IN struct _EFI_PCI_IO *This, + IN VOID *Mapping +); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_ALLOCATE_BUFFER) ( + IN struct _EFI_PCI_IO *This, + IN EFI_ALLOCATE_TYPE Type, + IN EFI_MEMORY_TYPE MemoryType, + IN UINTN Pages, + OUT VOID **HostAddress, + IN UINT64 Attributes + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_FREE_BUFFER) ( + IN struct _EFI_PCI_IO *This, + IN UINTN Pages, + IN VOID *HostAddress + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_FLUSH) ( + IN struct _EFI_PCI_IO *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_GET_LOCATION) ( + IN struct _EFI_PCI_IO *This, + OUT UINTN *SegmentNumber, + OUT UINTN *BusNumber, + OUT UINTN *DeviceNumber, + OUT UINTN *FunctionNumber + ); + +#define EFI_PCI_IO_ATTRIBUTE_ISA_IO 0x0002 +#define EFI_PCI_IO_ATTRIBUTE_VGA_PALETTE_IO 0x0004 +#define EFI_PCI_IO_ATTRIBUTE_VGA_MEMORY 0x0008 +#define EFI_PCI_IO_ATTRIBUTE_VGA_IO 0x0010 +#define EFI_PCI_IO_ATTRIBUTE_IDE_PRIMARY_IO 0x0020 +#define EFI_PCI_IO_ATTRIBUTE_IDE_SECONDARY_IO 0x0040 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY_WRITE_COMBINE 0x0080 +#define EFI_PCI_IO_ATTRIBUTE_IO 0x0100 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY 0x0200 +#define EFI_PCI_IO_ATTRIBUTE_BUS_MASTER 0x0400 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY_CACHED 0x0800 +#define EFI_PCI_IO_ATTRIBUTE_MEMORY_DISABLE 0x1000 +#define EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE 0x2000 +#define EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM 0x4000 +#define EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE 0x8000 +#define EFI_PCI_IO_ATTRIBUTE_ISA_IO_16 0x10000 +#define EFI_PCI_IO_ATTRIBUTE_VGA_PALETTE_IO_16 0x20000 +#define EFI_PCI_IO_ATTRIBUTE_VGA_IO_16 0x40000 + +typedef enum { + EfiPciIoAttributeOperationGet, + EfiPciIoAttributeOperationSet, + EfiPciIoAttributeOperationEnable, + EfiPciIoAttributeOperationDisable, + EfiPciIoAttributeOperationSupported, + EfiPciIoAttributeOperationMaximum +} EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_ATTRIBUTES) ( + IN struct _EFI_PCI_IO *This, + IN EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION Operation, + IN UINT64 Attributes, + OUT UINT64 *Result OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES) ( + IN struct _EFI_PCI_IO *This, + IN UINT8 BarIndex, + OUT UINT64 *Supports OPTIONAL, + OUT VOID **Resources OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES) ( + IN struct _EFI_PCI_IO *This, + IN UINT64 Attributes, + IN UINT8 BarIndex, + IN OUT UINT64 *Offset, + IN OUT UINT64 *Length + ); + +typedef struct _EFI_PCI_IO { + EFI_PCI_IO_PROTOCOL_POLL_IO_MEM PollMem; + EFI_PCI_IO_PROTOCOL_POLL_IO_MEM PollIo; + EFI_PCI_IO_PROTOCOL_ACCESS Mem; + EFI_PCI_IO_PROTOCOL_ACCESS Io; + EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS Pci; + EFI_PCI_IO_PROTOCOL_COPY_MEM CopyMem; + EFI_PCI_IO_PROTOCOL_MAP Map; + EFI_PCI_IO_PROTOCOL_UNMAP Unmap; + EFI_PCI_IO_PROTOCOL_ALLOCATE_BUFFER AllocateBuffer; + EFI_PCI_IO_PROTOCOL_FREE_BUFFER FreeBuffer; + EFI_PCI_IO_PROTOCOL_FLUSH Flush; + EFI_PCI_IO_PROTOCOL_GET_LOCATION GetLocation; + EFI_PCI_IO_PROTOCOL_ATTRIBUTES Attributes; + EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES GetBarAttributes; + EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES SetBarAttributes; + UINT64 RomSize; + VOID *RomImage; +} EFI_PCI_IO; + +#endif /* _EFI_PCI_IO_H */ diff --git a/efi64/include/efi/efiprot.h b/efi64/include/efi/efiprot.h new file mode 100644 index 00000000..fd76ec51 --- /dev/null +++ b/efi64/include/efi/efiprot.h @@ -0,0 +1,757 @@ +#ifndef _EFI_PROT_H +#define _EFI_PROT_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efiprot.h + +Abstract: + + EFI Protocols + + + +Revision History + +--*/ + +// +// FPSWA library protocol +// +#define FPSWA_PROTOCOL \ + { 0xc41b6531, 0x97b9, 0x11d3, {0x9a, 0x29, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +// +// Device Path protocol +// + +#define DEVICE_PATH_PROTOCOL \ + { 0x9576e91, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + + +// +// Block IO protocol +// + +#define BLOCK_IO_PROTOCOL \ + { 0x964e5b21, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } +#define EFI_BLOCK_IO_INTERFACE_REVISION 0x00010000 +#define EFI_BLOCK_IO_INTERFACE_REVISION2 0x00020001 +#define EFI_BLOCK_IO_INTERFACE_REVISION3 ((2<<16) | 31) + +INTERFACE_DECL(_EFI_BLOCK_IO); + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_RESET) ( + IN struct _EFI_BLOCK_IO *This, + IN BOOLEAN ExtendedVerification + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_READ) ( + IN struct _EFI_BLOCK_IO *This, + IN UINT32 MediaId, + IN EFI_LBA LBA, + IN UINTN BufferSize, + OUT VOID *Buffer + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_WRITE) ( + IN struct _EFI_BLOCK_IO *This, + IN UINT32 MediaId, + IN EFI_LBA LBA, + IN UINTN BufferSize, + IN VOID *Buffer + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_BLOCK_FLUSH) ( + IN struct _EFI_BLOCK_IO *This + ); + + + +typedef struct { + UINT32 MediaId; + BOOLEAN RemovableMedia; + BOOLEAN MediaPresent; + + BOOLEAN LogicalPartition; + BOOLEAN ReadOnly; + BOOLEAN WriteCaching; + + UINT32 BlockSize; + UINT32 IoAlign; + + EFI_LBA LastBlock; + + /* revision 2 */ + EFI_LBA LowestAlignedLba; + UINT32 LogicalBlocksPerPhysicalBlock; + /* revision 3 */ + UINT32 OptimalTransferLengthGranularity; +} EFI_BLOCK_IO_MEDIA; + +typedef struct _EFI_BLOCK_IO { + UINT64 Revision; + + EFI_BLOCK_IO_MEDIA *Media; + + EFI_BLOCK_RESET Reset; + EFI_BLOCK_READ ReadBlocks; + EFI_BLOCK_WRITE WriteBlocks; + EFI_BLOCK_FLUSH FlushBlocks; + +} EFI_BLOCK_IO; + + + +// +// Disk Block IO protocol +// + +#define DISK_IO_PROTOCOL \ + { 0xce345171, 0xba0b, 0x11d2, {0x8e, 0x4f, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } +#define EFI_DISK_IO_INTERFACE_REVISION 0x00010000 + +INTERFACE_DECL(_EFI_DISK_IO); + +typedef +EFI_STATUS +(EFIAPI *EFI_DISK_READ) ( + IN struct _EFI_DISK_IO *This, + IN UINT32 MediaId, + IN UINT64 Offset, + IN UINTN BufferSize, + OUT VOID *Buffer + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_DISK_WRITE) ( + IN struct _EFI_DISK_IO *This, + IN UINT32 MediaId, + IN UINT64 Offset, + IN UINTN BufferSize, + IN VOID *Buffer + ); + + +typedef struct _EFI_DISK_IO { + UINT64 Revision; + EFI_DISK_READ ReadDisk; + EFI_DISK_WRITE WriteDisk; +} EFI_DISK_IO; + + +// +// Simple file system protocol +// + +#define SIMPLE_FILE_SYSTEM_PROTOCOL \ + { 0x964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_EFI_FILE_IO_INTERFACE); +INTERFACE_DECL(_EFI_FILE_HANDLE); + +typedef +EFI_STATUS +(EFIAPI *EFI_VOLUME_OPEN) ( + IN struct _EFI_FILE_IO_INTERFACE *This, + OUT struct _EFI_FILE_HANDLE **Root + ); + +#define EFI_FILE_IO_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_FILE_IO_INTERFACE { + UINT64 Revision; + EFI_VOLUME_OPEN OpenVolume; +} EFI_FILE_IO_INTERFACE; + +// +// +// + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_OPEN) ( + IN struct _EFI_FILE_HANDLE *File, + OUT struct _EFI_FILE_HANDLE **NewHandle, + IN CHAR16 *FileName, + IN UINT64 OpenMode, + IN UINT64 Attributes + ); + +// Open modes +#define EFI_FILE_MODE_READ 0x0000000000000001 +#define EFI_FILE_MODE_WRITE 0x0000000000000002 +#define EFI_FILE_MODE_CREATE 0x8000000000000000 + +// File attributes +#define EFI_FILE_READ_ONLY 0x0000000000000001 +#define EFI_FILE_HIDDEN 0x0000000000000002 +#define EFI_FILE_SYSTEM 0x0000000000000004 +#define EFI_FILE_RESERVIED 0x0000000000000008 +#define EFI_FILE_DIRECTORY 0x0000000000000010 +#define EFI_FILE_ARCHIVE 0x0000000000000020 +#define EFI_FILE_VALID_ATTR 0x0000000000000037 + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_CLOSE) ( + IN struct _EFI_FILE_HANDLE *File + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_DELETE) ( + IN struct _EFI_FILE_HANDLE *File + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_READ) ( + IN struct _EFI_FILE_HANDLE *File, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_WRITE) ( + IN struct _EFI_FILE_HANDLE *File, + IN OUT UINTN *BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_SET_POSITION) ( + IN struct _EFI_FILE_HANDLE *File, + IN UINT64 Position + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_GET_POSITION) ( + IN struct _EFI_FILE_HANDLE *File, + OUT UINT64 *Position + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_GET_INFO) ( + IN struct _EFI_FILE_HANDLE *File, + IN EFI_GUID *InformationType, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_SET_INFO) ( + IN struct _EFI_FILE_HANDLE *File, + IN EFI_GUID *InformationType, + IN UINTN BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_FILE_FLUSH) ( + IN struct _EFI_FILE_HANDLE *File + ); + + + +#define EFI_FILE_HANDLE_REVISION 0x00010000 +typedef struct _EFI_FILE_HANDLE { + UINT64 Revision; + EFI_FILE_OPEN Open; + EFI_FILE_CLOSE Close; + EFI_FILE_DELETE Delete; + EFI_FILE_READ Read; + EFI_FILE_WRITE Write; + EFI_FILE_GET_POSITION GetPosition; + EFI_FILE_SET_POSITION SetPosition; + EFI_FILE_GET_INFO GetInfo; + EFI_FILE_SET_INFO SetInfo; + EFI_FILE_FLUSH Flush; +} EFI_FILE, *EFI_FILE_HANDLE; + + +// +// File information types +// + +#define EFI_FILE_INFO_ID \ + { 0x9576e92, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +typedef struct { + UINT64 Size; + UINT64 FileSize; + UINT64 PhysicalSize; + EFI_TIME CreateTime; + EFI_TIME LastAccessTime; + EFI_TIME ModificationTime; + UINT64 Attribute; + CHAR16 FileName[1]; +} EFI_FILE_INFO; + +// +// The FileName field of the EFI_FILE_INFO data structure is variable length. +// Whenever code needs to know the size of the EFI_FILE_INFO data structure, it needs to +// be the size of the data structure without the FileName field. The following macro +// computes this size correctly no matter how big the FileName array is declared. +// This is required to make the EFI_FILE_INFO data structure ANSI compilant. +// + +#define SIZE_OF_EFI_FILE_INFO EFI_FIELD_OFFSET(EFI_FILE_INFO,FileName) + +#define EFI_FILE_SYSTEM_INFO_ID \ + { 0x9576e93, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +typedef struct { + UINT64 Size; + BOOLEAN ReadOnly; + UINT64 VolumeSize; + UINT64 FreeSpace; + UINT32 BlockSize; + CHAR16 VolumeLabel[1]; +} EFI_FILE_SYSTEM_INFO; + +// +// The VolumeLabel field of the EFI_FILE_SYSTEM_INFO data structure is variable length. +// Whenever code needs to know the size of the EFI_FILE_SYSTEM_INFO data structure, it needs +// to be the size of the data structure without the VolumeLable field. The following macro +// computes this size correctly no matter how big the VolumeLable array is declared. +// This is required to make the EFI_FILE_SYSTEM_INFO data structure ANSI compilant. +// + +#define SIZE_OF_EFI_FILE_SYSTEM_INFO EFI_FIELD_OFFSET(EFI_FILE_SYSTEM_INFO,VolumeLabel) + +#define EFI_FILE_SYSTEM_VOLUME_LABEL_INFO_ID \ + { 0xDB47D7D3,0xFE81, 0x11d3, {0x9A, 0x35, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D} } + +typedef struct { + CHAR16 VolumeLabel[1]; +} EFI_FILE_SYSTEM_VOLUME_LABEL_INFO; + +#define SIZE_OF_EFI_FILE_SYSTEM_VOLUME_LABEL_INFO EFI_FIELD_OFFSET(EFI_FILE_SYSTEM_VOLUME_LABEL_INFO,VolumeLabel) + +// +// Load file protocol +// + + +#define LOAD_FILE_PROTOCOL \ + { 0x56EC3091, 0x954C, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} } + +INTERFACE_DECL(_EFI_LOAD_FILE_INTERFACE); + +typedef +EFI_STATUS +(EFIAPI *EFI_LOAD_FILE) ( + IN struct _EFI_LOAD_FILE_INTERFACE *This, + IN EFI_DEVICE_PATH *FilePath, + IN BOOLEAN BootPolicy, + IN OUT UINTN *BufferSize, + IN VOID *Buffer OPTIONAL + ); + +typedef struct _EFI_LOAD_FILE_INTERFACE { + EFI_LOAD_FILE LoadFile; +} EFI_LOAD_FILE_INTERFACE; + + +// +// Device IO protocol +// + +#define DEVICE_IO_PROTOCOL \ + { 0xaf6ac311, 0x84c3, 0x11d2, {0x8e, 0x3c, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_EFI_DEVICE_IO_INTERFACE); + +typedef enum { + IO_UINT8, + IO_UINT16, + IO_UINT32, + IO_UINT64, +// +// Specification Change: Copy from MMIO to MMIO vs. MMIO to buffer, buffer to MMIO +// + MMIO_COPY_UINT8, + MMIO_COPY_UINT16, + MMIO_COPY_UINT32, + MMIO_COPY_UINT64 +} EFI_IO_WIDTH; + +#define EFI_PCI_ADDRESS(_bus,_dev,_func) \ + ( (UINT64) ( (((UINTN)_bus) << 24) + (((UINTN)_dev) << 16) + (((UINTN)_func) << 8) ) ) + + +typedef +EFI_STATUS +(EFIAPI *EFI_DEVICE_IO) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN EFI_IO_WIDTH Width, + IN UINT64 Address, + IN UINTN Count, + IN OUT VOID *Buffer + ); + +typedef struct { + EFI_DEVICE_IO Read; + EFI_DEVICE_IO Write; +} EFI_IO_ACCESS; + +typedef +EFI_STATUS +(EFIAPI *EFI_PCI_DEVICE_PATH) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN UINT64 Address, + IN OUT EFI_DEVICE_PATH **PciDevicePath + ); + +typedef enum { + EfiBusMasterRead, + EfiBusMasterWrite, + EfiBusMasterCommonBuffer +} EFI_IO_OPERATION_TYPE; + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_MAP) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN EFI_IO_OPERATION_TYPE Operation, + IN EFI_PHYSICAL_ADDRESS *HostAddress, + IN OUT UINTN *NumberOfBytes, + OUT EFI_PHYSICAL_ADDRESS *DeviceAddress, + OUT VOID **Mapping + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_UNMAP) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN VOID *Mapping + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_ALLOCATE_BUFFER) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN EFI_ALLOCATE_TYPE Type, + IN EFI_MEMORY_TYPE MemoryType, + IN UINTN Pages, + IN OUT EFI_PHYSICAL_ADDRESS *HostAddress + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_FLUSH) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IO_FREE_BUFFER) ( + IN struct _EFI_DEVICE_IO_INTERFACE *This, + IN UINTN Pages, + IN EFI_PHYSICAL_ADDRESS HostAddress + ); + +typedef struct _EFI_DEVICE_IO_INTERFACE { + EFI_IO_ACCESS Mem; + EFI_IO_ACCESS Io; + EFI_IO_ACCESS Pci; + EFI_IO_MAP Map; + EFI_PCI_DEVICE_PATH PciDevicePath; + EFI_IO_UNMAP Unmap; + EFI_IO_ALLOCATE_BUFFER AllocateBuffer; + EFI_IO_FLUSH Flush; + EFI_IO_FREE_BUFFER FreeBuffer; +} EFI_DEVICE_IO_INTERFACE; + + +// +// Unicode Collation protocol +// + +#define UNICODE_COLLATION_PROTOCOL \ + { 0x1d85cd7f, 0xf43d, 0x11d2, {0x9a, 0xc, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +#define UNICODE_BYTE_ORDER_MARK (CHAR16)(0xfeff) + +INTERFACE_DECL(_EFI_UNICODE_COLLATION_INTERFACE); + +typedef +INTN +(EFIAPI *EFI_UNICODE_STRICOLL) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN CHAR16 *s1, + IN CHAR16 *s2 + ); + +typedef +BOOLEAN +(EFIAPI *EFI_UNICODE_METAIMATCH) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN CHAR16 *String, + IN CHAR16 *Pattern + ); + +typedef +VOID +(EFIAPI *EFI_UNICODE_STRLWR) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN OUT CHAR16 *Str + ); + +typedef +VOID +(EFIAPI *EFI_UNICODE_STRUPR) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN OUT CHAR16 *Str + ); + +typedef +VOID +(EFIAPI *EFI_UNICODE_FATTOSTR) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN UINTN FatSize, + IN CHAR8 *Fat, + OUT CHAR16 *String + ); + +typedef +BOOLEAN +(EFIAPI *EFI_UNICODE_STRTOFAT) ( + IN struct _EFI_UNICODE_COLLATION_INTERFACE *This, + IN CHAR16 *String, + IN UINTN FatSize, + OUT CHAR8 *Fat + ); + + +typedef struct _EFI_UNICODE_COLLATION_INTERFACE { + + // general + EFI_UNICODE_STRICOLL StriColl; + EFI_UNICODE_METAIMATCH MetaiMatch; + EFI_UNICODE_STRLWR StrLwr; + EFI_UNICODE_STRUPR StrUpr; + + // for supporting fat volumes + EFI_UNICODE_FATTOSTR FatToStr; + EFI_UNICODE_STRTOFAT StrToFat; + + CHAR8 *SupportedLanguages; +} EFI_UNICODE_COLLATION_INTERFACE; + +/* Graphics output protocol */ +#define EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID \ + { \ + 0x9042a9de, 0x23dc, 0x4a38, {0x96, 0xfb, 0x7a, 0xde, 0xd0, 0x80, 0x51, 0x6a } \ + } + +typedef struct _EFI_GRAPHICS_OUTPUT_PROTOCOL EFI_GRAPHICS_OUTPUT_PROTOCOL; + +typedef struct { + UINT32 RedMask; + UINT32 GreenMask; + UINT32 BlueMask; + UINT32 ReservedMask; +} EFI_PIXEL_BITMASK; + +typedef enum { + PixelRedGreenBlueReserved8BitPerColor, + PixelBlueGreenRedReserved8BitPerColor, + PixelBitMask, + PixelBltOnly, + PixelFormatMax +} EFI_GRAPHICS_PIXEL_FORMAT; + +typedef struct { + UINT32 Version; + UINT32 HorizontalResolution; + UINT32 VerticalResolution; + EFI_GRAPHICS_PIXEL_FORMAT PixelFormat; + EFI_PIXEL_BITMASK PixelInformation; + UINT32 PixelsPerScanLine; +} EFI_GRAPHICS_OUTPUT_MODE_INFORMATION; + +/** + Return the current video mode information. + + @param This Protocol instance pointer. + @param ModeNumber The mode number to return information on. + @param SizeOfInfo A pointer to the size, in bytes, of the Info buffer. + @param Info A pointer to callee allocated buffer that returns information about ModeNumber. + + @retval EFI_SUCCESS Mode information returned. + @retval EFI_BUFFER_TOO_SMALL The Info buffer was too small. + @retval EFI_DEVICE_ERROR A hardware error occurred trying to retrieve the video mode. + @retval EFI_NOT_STARTED Video display is not initialized. Call SetMode () + @retval EFI_INVALID_PARAMETER One of the input args was NULL. + +**/ +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE) ( + IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, + IN UINT32 ModeNumber, + OUT UINTN *SizeOfInfo, + OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info + ) +; + +/** + Return the current video mode information. + + @param This Protocol instance pointer. + @param ModeNumber The mode number to be set. + + @retval EFI_SUCCESS Graphics mode was changed. + @retval EFI_DEVICE_ERROR The device had an error and could not complete the request. + @retval EFI_UNSUPPORTED ModeNumber is not supported by this device. + +**/ +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE) ( + IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, + IN UINT32 ModeNumber + ); + +typedef struct { + UINT8 Blue; + UINT8 Green; + UINT8 Red; + UINT8 Reserved; +} EFI_GRAPHICS_OUTPUT_BLT_PIXEL; + +typedef union { + EFI_GRAPHICS_OUTPUT_BLT_PIXEL Pixel; + UINT32 Raw; +} EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION; + +typedef enum { + EfiBltVideoFill, + EfiBltVideoToBltBuffer, + EfiBltBufferToVideo, + EfiBltVideoToVideo, + EfiGraphicsOutputBltOperationMax +} EFI_GRAPHICS_OUTPUT_BLT_OPERATION; + +/** + The following table defines actions for BltOperations: + + EfiBltVideoFill - Write data from the BltBuffer pixel (SourceX, SourceY) + directly to every pixel of the video display rectangle + (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). + Only one pixel will be used from the BltBuffer. Delta is NOT used. + + EfiBltVideoToBltBuffer - Read data from the video display rectangle + (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in + the BltBuffer rectangle (DestinationX, DestinationY ) + (DestinationX + Width, DestinationY + Height). If DestinationX or + DestinationY is not zero then Delta must be set to the length in bytes + of a row in the BltBuffer. + + EfiBltBufferToVideo - Write data from the BltBuffer rectangle + (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the + video display rectangle (DestinationX, DestinationY) + (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is + not zero then Delta must be set to the length in bytes of a row in the + BltBuffer. + + EfiBltVideoToVideo - Copy from the video display rectangle (SourceX, SourceY) + (SourceX + Width, SourceY + Height) .to the video display rectangle + (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). + The BltBuffer and Delta are not used in this mode. + + @param This Protocol instance pointer. + @param BltBuffer Buffer containing data to blit into video buffer. This + buffer has a size of Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL) + @param BltOperation Operation to perform on BlitBuffer and video memory + @param SourceX X coordinate of source for the BltBuffer. + @param SourceY Y coordinate of source for the BltBuffer. + @param DestinationX X coordinate of destination for the BltBuffer. + @param DestinationY Y coordinate of destination for the BltBuffer. + @param Width Width of rectangle in BltBuffer in pixels. + @param Height Hight of rectangle in BltBuffer in pixels. + @param Delta OPTIONAL + + @retval EFI_SUCCESS The Blt operation completed. + @retval EFI_INVALID_PARAMETER BltOperation is not valid. + @retval EFI_DEVICE_ERROR A hardware error occured writting to the video buffer. + +**/ +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT) ( + IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, + IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer, OPTIONAL + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, + IN UINTN SourceX, + IN UINTN SourceY, + IN UINTN DestinationX, + IN UINTN DestinationY, + IN UINTN Width, + IN UINTN Height, + IN UINTN Delta OPTIONAL + ); + +typedef struct { + UINT32 MaxMode; + UINT32 Mode; + EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Info; + UINTN SizeOfInfo; + EFI_PHYSICAL_ADDRESS FrameBufferBase; + UINTN FrameBufferSize; +} EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE; + +struct _EFI_GRAPHICS_OUTPUT_PROTOCOL { + EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE QueryMode; + EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE SetMode; + EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT Blt; + EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *Mode; +}; + +INTERFACE_DECL(_EFI_SERVICE_BINDING); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERVICE_BINDING_CREATE_CHILD) ( + IN struct _EFI_SERVICE_BINDING *This, + IN EFI_HANDLE *ChildHandle + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERVICE_BINDING_DESTROY_CHILD) ( + IN struct _EFI_SERVICE_BINDING *This, + IN EFI_HANDLE ChildHandle + ); + +typedef struct _EFI_SERVICE_BINDING { + EFI_SERVICE_BINDING_CREATE_CHILD CreateChild; + EFI_SERVICE_BINDING_DESTROY_CHILD DestroyChild; +} EFI_SERVICE_BINDING; + +#endif + diff --git a/efi64/include/efi/efipxebc.h b/efi64/include/efi/efipxebc.h new file mode 100644 index 00000000..932382ae --- /dev/null +++ b/efi64/include/efi/efipxebc.h @@ -0,0 +1,464 @@ +#ifndef _EFIPXEBC_H +#define _EFIPXEBC_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efipxebc.h + +Abstract: + + EFI PXE Base Code Protocol + + + +Revision History + +--*/ + +// +// PXE Base Code protocol +// + +#define EFI_PXE_BASE_CODE_PROTOCOL \ + { 0x03c4e603, 0xac28, 0x11d3, {0x9a, 0x2d, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } + +INTERFACE_DECL(_EFI_PXE_BASE_CODE); + +#define DEFAULT_TTL 4 +#define DEFAULT_ToS 0 +// +// Address definitions +// + +typedef union { + UINT32 Addr[4]; + EFI_IPv4_ADDRESS v4; + EFI_IPv6_ADDRESS v6; +} EFI_IP_ADDRESS; + +typedef UINT16 EFI_PXE_BASE_CODE_UDP_PORT; + +// +// Packet definitions +// + +typedef struct { + UINT8 BootpOpcode; + UINT8 BootpHwType; + UINT8 BootpHwAddrLen; + UINT8 BootpGateHops; + UINT32 BootpIdent; + UINT16 BootpSeconds; + UINT16 BootpFlags; + UINT8 BootpCiAddr[4]; + UINT8 BootpYiAddr[4]; + UINT8 BootpSiAddr[4]; + UINT8 BootpGiAddr[4]; + UINT8 BootpHwAddr[16]; + UINT8 BootpSrvName[64]; + UINT8 BootpBootFile[128]; + UINT32 DhcpMagik; + UINT8 DhcpOptions[56]; +} EFI_PXE_BASE_CODE_DHCPV4_PACKET; + +typedef struct { + UINT32 MessageType:8; + UINT32 TransactionId:24; + UINT8 DhcpOptions[1024]; +} EFI_PXE_BASE_CODE_DHCPV6_PACKET; + +typedef union { + UINT8 Raw[1472]; + EFI_PXE_BASE_CODE_DHCPV4_PACKET Dhcpv4; + EFI_PXE_BASE_CODE_DHCPV6_PACKET Dhcpv6; +} EFI_PXE_BASE_CODE_PACKET; + +typedef struct { + UINT8 Type; + UINT8 Code; + UINT16 Checksum; + union { + UINT32 reserved; + UINT32 Mtu; + UINT32 Pointer; + struct { + UINT16 Identifier; + UINT16 Sequence; + } Echo; + } u; + UINT8 Data[494]; +} EFI_PXE_BASE_CODE_ICMP_ERROR; + +typedef struct { + UINT8 ErrorCode; + CHAR8 ErrorString[127]; +} EFI_PXE_BASE_CODE_TFTP_ERROR; + +// +// IP Receive Filter definitions +// +#define EFI_PXE_BASE_CODE_MAX_IPCNT 8 +typedef struct { + UINT8 Filters; + UINT8 IpCnt; + UINT16 reserved; + EFI_IP_ADDRESS IpList[EFI_PXE_BASE_CODE_MAX_IPCNT]; +} EFI_PXE_BASE_CODE_IP_FILTER; + +#define EFI_PXE_BASE_CODE_IP_FILTER_STATION_IP 0x0001 +#define EFI_PXE_BASE_CODE_IP_FILTER_BROADCAST 0x0002 +#define EFI_PXE_BASE_CODE_IP_FILTER_PROMISCUOUS 0x0004 +#define EFI_PXE_BASE_CODE_IP_FILTER_PROMISCUOUS_MULTICAST 0x0008 + +// +// ARP Cache definitions +// + +typedef struct { + EFI_IP_ADDRESS IpAddr; + EFI_MAC_ADDRESS MacAddr; +} EFI_PXE_BASE_CODE_ARP_ENTRY; + +typedef struct { + EFI_IP_ADDRESS IpAddr; + EFI_IP_ADDRESS SubnetMask; + EFI_IP_ADDRESS GwAddr; +} EFI_PXE_BASE_CODE_ROUTE_ENTRY; + +// +// UDP definitions +// + +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_SRC_IP 0x0001 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_SRC_PORT 0x0002 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_DEST_IP 0x0004 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_ANY_DEST_PORT 0x0008 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_USE_FILTER 0x0010 +#define EFI_PXE_BASE_CODE_UDP_OPFLAGS_MAY_FRAGMENT 0x0020 + +// +// Discover() definitions +// + +#define EFI_PXE_BASE_CODE_BOOT_TYPE_BOOTSTRAP 0 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_MS_WINNT_RIS 1 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_INTEL_LCM 2 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_DOSUNDI 3 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_NEC_ESMPRO 4 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_IBM_WSoD 5 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_IBM_LCCM 6 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_CA_UNICENTER_TNG 7 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_HP_OPENVIEW 8 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_ALTIRIS_9 9 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_ALTIRIS_10 10 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_ALTIRIS_11 11 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_NOT_USED_12 12 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_REDHAT_INSTALL 13 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_REDHAT_BOOT 14 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_REMBO 15 +#define EFI_PXE_BASE_CODE_BOOT_TYPE_BEOBOOT 16 +// +// 17 through 32767 are reserved +// 32768 through 65279 are for vendor use +// 65280 through 65534 are reserved +// +#define EFI_PXE_BASE_CODE_BOOT_TYPE_PXETEST 65535 + +#define EFI_PXE_BASE_CODE_BOOT_LAYER_MASK 0x7FFF +#define EFI_PXE_BASE_CODE_BOOT_LAYER_INITIAL 0x0000 + + +typedef struct { + UINT16 Type; + BOOLEAN AcceptAnyResponse; + UINT8 Reserved; + EFI_IP_ADDRESS IpAddr; +} EFI_PXE_BASE_CODE_SRVLIST; + +typedef struct { + BOOLEAN UseMCast; + BOOLEAN UseBCast; + BOOLEAN UseUCast; + BOOLEAN MustUseList; + EFI_IP_ADDRESS ServerMCastIp; + UINT16 IpCnt; + EFI_PXE_BASE_CODE_SRVLIST SrvList[1]; +} EFI_PXE_BASE_CODE_DISCOVER_INFO; + +// +// Mtftp() definitions +// + +typedef enum { + EFI_PXE_BASE_CODE_TFTP_FIRST, + EFI_PXE_BASE_CODE_TFTP_GET_FILE_SIZE, + EFI_PXE_BASE_CODE_TFTP_READ_FILE, + EFI_PXE_BASE_CODE_TFTP_WRITE_FILE, + EFI_PXE_BASE_CODE_TFTP_READ_DIRECTORY, + EFI_PXE_BASE_CODE_MTFTP_GET_FILE_SIZE, + EFI_PXE_BASE_CODE_MTFTP_READ_FILE, + EFI_PXE_BASE_CODE_MTFTP_READ_DIRECTORY, + EFI_PXE_BASE_CODE_MTFTP_LAST +} EFI_PXE_BASE_CODE_TFTP_OPCODE; + +typedef struct { + EFI_IP_ADDRESS MCastIp; + EFI_PXE_BASE_CODE_UDP_PORT CPort; + EFI_PXE_BASE_CODE_UDP_PORT SPort; + UINT16 ListenTimeout; + UINT16 TransmitTimeout; +} EFI_PXE_BASE_CODE_MTFTP_INFO; + +// +// PXE Base Code Mode structure +// + +#define EFI_PXE_BASE_CODE_MAX_ARP_ENTRIES 8 +#define EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES 8 + +typedef struct { + BOOLEAN Started; + BOOLEAN Ipv6Available; + BOOLEAN Ipv6Supported; + BOOLEAN UsingIpv6; + BOOLEAN BisSupported; + BOOLEAN BisDetected; + BOOLEAN AutoArp; + BOOLEAN SendGUID; + BOOLEAN DhcpDiscoverValid; + BOOLEAN DhcpAckReceived; + BOOLEAN ProxyOfferReceived; + BOOLEAN PxeDiscoverValid; + BOOLEAN PxeReplyReceived; + BOOLEAN PxeBisReplyReceived; + BOOLEAN IcmpErrorReceived; + BOOLEAN TftpErrorReceived; + BOOLEAN MakeCallbacks; + UINT8 TTL; + UINT8 ToS; + EFI_IP_ADDRESS StationIp; + EFI_IP_ADDRESS SubnetMask; + EFI_PXE_BASE_CODE_PACKET DhcpDiscover; + EFI_PXE_BASE_CODE_PACKET DhcpAck; + EFI_PXE_BASE_CODE_PACKET ProxyOffer; + EFI_PXE_BASE_CODE_PACKET PxeDiscover; + EFI_PXE_BASE_CODE_PACKET PxeReply; + EFI_PXE_BASE_CODE_PACKET PxeBisReply; + EFI_PXE_BASE_CODE_IP_FILTER IpFilter; + UINT32 ArpCacheEntries; + EFI_PXE_BASE_CODE_ARP_ENTRY ArpCache[EFI_PXE_BASE_CODE_MAX_ARP_ENTRIES]; + UINT32 RouteTableEntries; + EFI_PXE_BASE_CODE_ROUTE_ENTRY RouteTable[EFI_PXE_BASE_CODE_MAX_ROUTE_ENTRIES]; + EFI_PXE_BASE_CODE_ICMP_ERROR IcmpError; + EFI_PXE_BASE_CODE_TFTP_ERROR TftpError; +} EFI_PXE_BASE_CODE_MODE; + +// +// PXE Base Code Interface Function definitions +// + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_START) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN BOOLEAN UseIpv6 + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_STOP) ( + IN struct _EFI_PXE_BASE_CODE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_DHCP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN BOOLEAN SortOffers + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_DISCOVER) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN UINT16 Type, + IN UINT16 *Layer, + IN BOOLEAN UseBis, + IN OUT EFI_PXE_BASE_CODE_DISCOVER_INFO *Info OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_MTFTP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_PXE_BASE_CODE_TFTP_OPCODE Operation, + IN OUT VOID *BufferPtr OPTIONAL, + IN BOOLEAN Overwrite, + IN OUT UINT64 *BufferSize, + IN UINTN *BlockSize OPTIONAL, + IN EFI_IP_ADDRESS *ServerIp, + IN UINT8 *Filename, + IN EFI_PXE_BASE_CODE_MTFTP_INFO *Info OPTIONAL, + IN BOOLEAN DontUseBuffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_UDP_WRITE) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN UINT16 OpFlags, + IN EFI_IP_ADDRESS *DestIp, + IN EFI_PXE_BASE_CODE_UDP_PORT *DestPort, + IN EFI_IP_ADDRESS *GatewayIp, OPTIONAL + IN EFI_IP_ADDRESS *SrcIp, OPTIONAL + IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort, OPTIONAL + IN UINTN *HeaderSize, OPTIONAL + IN VOID *HeaderPtr, OPTIONAL + IN UINTN *BufferSize, + IN VOID *BufferPtr + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_UDP_READ) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN UINT16 OpFlags, + IN OUT EFI_IP_ADDRESS *DestIp, OPTIONAL + IN OUT EFI_PXE_BASE_CODE_UDP_PORT *DestPort, OPTIONAL + IN OUT EFI_IP_ADDRESS *SrcIp, OPTIONAL + IN OUT EFI_PXE_BASE_CODE_UDP_PORT *SrcPort, OPTIONAL + IN UINTN *HeaderSize, OPTIONAL + IN VOID *HeaderPtr, OPTIONAL + IN OUT UINTN *BufferSize, + IN VOID *BufferPtr + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_IP_FILTER) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_PXE_BASE_CODE_IP_FILTER *NewFilter + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_ARP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_IP_ADDRESS *IpAddr, + IN EFI_MAC_ADDRESS *MacAddr OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_PARAMETERS) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN BOOLEAN *NewAutoArp, OPTIONAL + IN BOOLEAN *NewSendGUID, OPTIONAL + IN UINT8 *NewTTL, OPTIONAL + IN UINT8 *NewToS, OPTIONAL + IN BOOLEAN *NewMakeCallback OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_STATION_IP) ( + IN struct _EFI_PXE_BASE_CODE *This, + IN EFI_IP_ADDRESS *NewStationIp, OPTIONAL + IN EFI_IP_ADDRESS *NewSubnetMask OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PXE_BASE_CODE_SET_PACKETS) ( + IN struct _EFI_PXE_BASE_CODE *This, + BOOLEAN *NewDhcpDiscoverValid, OPTIONAL + BOOLEAN *NewDhcpAckReceived, OPTIONAL + BOOLEAN *NewProxyOfferReceived, OPTIONAL + BOOLEAN *NewPxeDiscoverValid, OPTIONAL + BOOLEAN *NewPxeReplyReceived, OPTIONAL + BOOLEAN *NewPxeBisReplyReceived,OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewDhcpDiscover, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewDhcpAck, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewProxyOffer, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewPxeDiscover, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewPxeReply, OPTIONAL + IN EFI_PXE_BASE_CODE_PACKET *NewPxeBisReply OPTIONAL + ); + +// +// PXE Base Code Protocol structure +// + +#define EFI_PXE_BASE_CODE_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_PXE_BASE_CODE { + UINT64 Revision; + EFI_PXE_BASE_CODE_START Start; + EFI_PXE_BASE_CODE_STOP Stop; + EFI_PXE_BASE_CODE_DHCP Dhcp; + EFI_PXE_BASE_CODE_DISCOVER Discover; + EFI_PXE_BASE_CODE_MTFTP Mtftp; + EFI_PXE_BASE_CODE_UDP_WRITE UdpWrite; + EFI_PXE_BASE_CODE_UDP_READ UdpRead; + EFI_PXE_BASE_CODE_SET_IP_FILTER SetIpFilter; + EFI_PXE_BASE_CODE_ARP Arp; + EFI_PXE_BASE_CODE_SET_PARAMETERS SetParameters; + EFI_PXE_BASE_CODE_SET_STATION_IP SetStationIp; + EFI_PXE_BASE_CODE_SET_PACKETS SetPackets; + EFI_PXE_BASE_CODE_MODE *Mode; +} EFI_PXE_BASE_CODE; + +// +// Call Back Definitions +// + +#define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL \ + { 0x245dca21, 0xfb7b, 0x11d3, {0x8f, 0x01, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +// +// Revision Number +// + +#define EFI_PXE_BASE_CODE_CALLBACK_INTERFACE_REVISION 0x00010000 + +INTERFACE_DECL(_EFI_PXE_BASE_CODE_CALLBACK); + +typedef enum { + EFI_PXE_BASE_CODE_FUNCTION_FIRST, + EFI_PXE_BASE_CODE_FUNCTION_DHCP, + EFI_PXE_BASE_CODE_FUNCTION_DISCOVER, + EFI_PXE_BASE_CODE_FUNCTION_MTFTP, + EFI_PXE_BASE_CODE_FUNCTION_UDP_WRITE, + EFI_PXE_BASE_CODE_FUNCTION_UDP_READ, + EFI_PXE_BASE_CODE_FUNCTION_ARP, + EFI_PXE_BASE_CODE_FUNCTION_IGMP, + EFI_PXE_BASE_CODE_PXE_FUNCTION_LAST +} EFI_PXE_BASE_CODE_FUNCTION; + +typedef enum { + EFI_PXE_BASE_CODE_CALLBACK_STATUS_FIRST, + EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, + EFI_PXE_BASE_CODE_CALLBACK_STATUS_ABORT, + EFI_PXE_BASE_CODE_CALLBACK_STATUS_LAST +} EFI_PXE_BASE_CODE_CALLBACK_STATUS; + +typedef +EFI_PXE_BASE_CODE_CALLBACK_STATUS +(EFIAPI *EFI_PXE_CALLBACK) ( + IN struct _EFI_PXE_BASE_CODE_CALLBACK *This, + IN EFI_PXE_BASE_CODE_FUNCTION Function, + IN BOOLEAN Received, + IN UINT32 PacketLen, + IN EFI_PXE_BASE_CODE_PACKET *Packet OPTIONAL + ); + +typedef struct _EFI_PXE_BASE_CODE_CALLBACK { + UINT64 Revision; + EFI_PXE_CALLBACK Callback; +} EFI_PXE_BASE_CODE_CALLBACK; + +#endif /* _EFIPXEBC_H */ diff --git a/efi64/include/efi/efirtlib.h b/efi64/include/efi/efirtlib.h new file mode 100644 index 00000000..c073ead9 --- /dev/null +++ b/efi64/include/efi/efirtlib.h @@ -0,0 +1,141 @@ +#ifndef _EFI_RT_LIB_INCLUDE_ +#define _EFI_RT_LIB_INCLUDE_ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efilib.h + +Abstract: + + EFI Runtime library functions + + + +Revision History + +--*/ + +#include "efidebug.h" +#include "efipart.h" +#include "efilibplat.h" + + +VOID +RUNTIMEFUNCTION +RtZeroMem ( + IN VOID *Buffer, + IN UINTN Size + ); + +VOID +RUNTIMEFUNCTION +RtSetMem ( + IN VOID *Buffer, + IN UINTN Size, + IN UINT8 Value + ); + +VOID +RUNTIMEFUNCTION +RtCopyMem ( + IN VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +RUNTIMEFUNCTION +RtCompareMem ( + IN CONST VOID *Dest, + IN CONST VOID *Src, + IN UINTN len + ); + +INTN +RUNTIMEFUNCTION +RtStrCmp ( + IN CONST CHAR16 *s1, + IN CONST CHAR16 *s2 + ); + + +VOID +RUNTIMEFUNCTION +RtStrCpy ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +VOID +RUNTIMEFUNCTION +RtStrCat ( + IN CHAR16 *Dest, + IN CONST CHAR16 *Src + ); + +UINTN +RUNTIMEFUNCTION +RtStrLen ( + IN CONST CHAR16 *s1 + ); + +UINTN +RUNTIMEFUNCTION +RtStrSize ( + IN CONST CHAR16 *s1 + ); + +INTN +RUNTIMEFUNCTION +RtCompareGuid ( + IN EFI_GUID *Guid1, + IN EFI_GUID *Guid2 + ); + +UINT8 +RUNTIMEFUNCTION +RtDecimaltoBCD( + IN UINT8 BcdValue + ); + +UINT8 +RUNTIMEFUNCTION +RtBCDtoDecimal( + IN UINT8 BcdValue + ); + +// +// Virtual mapping transition support. (Only used during +// the virtual address change transisition) +// + +VOID +RUNTIMEFUNCTION +RtLibEnableVirtualMappings ( + VOID + ); + +VOID +RUNTIMEFUNCTION +RtConvertList ( + IN UINTN DebugDisposition, + IN OUT LIST_ENTRY *ListHead + ); + +VOID +RUNTIMEFUNCTION +RtAcquireLock ( + IN FLOCK *Lock + ); + +VOID +RUNTIMEFUNCTION +RtReleaseLock ( + IN FLOCK *Lock + ); + + +#endif diff --git a/efi64/include/efi/efiser.h b/efi64/include/efi/efiser.h new file mode 100644 index 00000000..fcc97a19 --- /dev/null +++ b/efi64/include/efi/efiser.h @@ -0,0 +1,132 @@ +#ifndef _EFI_SER_H +#define _EFI_SER_H + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efiser.h + +Abstract: + + EFI serial protocol + +Revision History + +--*/ + +// +// Serial protocol +// + +#define SERIAL_IO_PROTOCOL \ + { 0xBB25CF6F, 0xF1D4, 0x11D2, {0x9A, 0x0C, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0xFD} } + +INTERFACE_DECL(_SERIAL_IO_INTERFACE); + +typedef enum { + DefaultParity, + NoParity, + EvenParity, + OddParity, + MarkParity, + SpaceParity +} EFI_PARITY_TYPE; + +typedef enum { + DefaultStopBits, + OneStopBit, // 1 stop bit + OneFiveStopBits, // 1.5 stop bits + TwoStopBits // 2 stop bits +} EFI_STOP_BITS_TYPE; + +#define EFI_SERIAL_CLEAR_TO_SEND 0x0010 // RO +#define EFI_SERIAL_DATA_SET_READY 0x0020 // RO +#define EFI_SERIAL_RING_INDICATE 0x0040 // RO +#define EFI_SERIAL_CARRIER_DETECT 0x0080 // RO +#define EFI_SERIAL_REQUEST_TO_SEND 0x0002 // WO +#define EFI_SERIAL_DATA_TERMINAL_READY 0x0001 // WO +#define EFI_SERIAL_INPUT_BUFFER_EMPTY 0x0100 // RO +#define EFI_SERIAL_OUTPUT_BUFFER_EMPTY 0x0200 // RO +#define EFI_SERIAL_HARDWARE_LOOPBACK_ENABLE 0x1000 // RW +#define EFI_SERIAL_SOFTWARE_LOOPBACK_ENABLE 0x2000 // RW +#define EFI_SERIAL_HARDWARE_FLOW_CONTROL_ENABLE 0x4000 // RW + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_RESET) ( + IN struct _SERIAL_IO_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_SET_ATTRIBUTES) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN UINT64 BaudRate, + IN UINT32 ReceiveFifoDepth, + IN UINT32 Timeout, + IN EFI_PARITY_TYPE Parity, + IN UINT8 DataBits, + IN EFI_STOP_BITS_TYPE StopBits + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_SET_CONTROL_BITS) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN UINT32 Control + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_GET_CONTROL_BITS) ( + IN struct _SERIAL_IO_INTERFACE *This, + OUT UINT32 *Control + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_WRITE) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SERIAL_READ) ( + IN struct _SERIAL_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef struct { + UINT32 ControlMask; + + // current Attributes + UINT32 Timeout; + UINT64 BaudRate; + UINT32 ReceiveFifoDepth; + UINT32 DataBits; + UINT32 Parity; + UINT32 StopBits; +} SERIAL_IO_MODE; + +#define SERIAL_IO_INTERFACE_REVISION 0x00010000 + +typedef struct _SERIAL_IO_INTERFACE { + UINT32 Revision; + EFI_SERIAL_RESET Reset; + EFI_SERIAL_SET_ATTRIBUTES SetAttributes; + EFI_SERIAL_SET_CONTROL_BITS SetControl; + EFI_SERIAL_GET_CONTROL_BITS GetControl; + EFI_SERIAL_WRITE Write; + EFI_SERIAL_READ Read; + + SERIAL_IO_MODE *Mode; +} SERIAL_IO_INTERFACE; + +#endif + diff --git a/efi64/include/efi/efistdarg.h b/efi64/include/efi/efistdarg.h new file mode 100644 index 00000000..8a96b94f --- /dev/null +++ b/efi64/include/efi/efistdarg.h @@ -0,0 +1,33 @@ +#ifndef _EFISTDARG_H_ +#define _EFISTDARG_H_ + +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + devpath.h + +Abstract: + + Defines for parsing the EFI Device Path structures + + + +Revision History + +--*/ +#ifdef __GNUC__ +#include "stdarg.h" +#else +#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(UINTN) - 1) & ~(sizeof(UINTN) - 1) ) + +typedef CHAR8 * va_list; + +#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) ) +#define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) ) +#define va_end(ap) ( ap = (va_list)0 ) +#endif + +#endif /* _INC_STDARG */ diff --git a/efi64/include/efi/efitcp.h b/efi64/include/efi/efitcp.h new file mode 100644 index 00000000..6c5df7fd --- /dev/null +++ b/efi64/include/efi/efitcp.h @@ -0,0 +1,391 @@ +#ifndef _EFI_TCP_H +#define _EFI_TCP_H + +/*++ +Copyright (c) 2013 Intel Corporation + +--*/ + +#define EFI_TCP4_SERVICE_BINDING_PROTOCOL \ + { 0x00720665, 0x67eb, 0x4a99, {0xba, 0xf7, 0xd3, 0xc3, 0x3a, 0x1c,0x7c, 0xc9}} + +#define EFI_TCP4_PROTOCOL \ + { 0x65530bc7, 0xa359, 0x410f, {0xb0, 0x10, 0x5a, 0xad, 0xc7, 0xec, 0x2b, 0x62}} + +#define EFI_TCP6_SERVICE_BINDING_PROTOCOL \ + { 0xec20eb79, 0x6c1a, 0x4664, {0x9a, 0xd, 0xd2, 0xe4, 0xcc, 0x16, 0xd6, 0x64}} + +#define EFI_TCP6_PROTOCOL \ + { 0x46e44855, 0xbd60, 0x4ab7, {0xab, 0xd, 0xa6, 0x79, 0xb9, 0x44, 0x7d, 0x77}} + +INTERFACE_DECL(_EFI_TCP4); +INTERFACE_DECL(_EFI_TCP6); + +typedef struct { + BOOLEAN UseDefaultAddress; + EFI_IPv4_ADDRESS StationAddress; + EFI_IPv4_ADDRESS SubnetMask; + UINT16 StationPort; + EFI_IPv4_ADDRESS RemoteAddress; + UINT16 RemotePort; + BOOLEAN ActiveFlag; +} EFI_TCP4_ACCESS_POINT; + +typedef struct { + UINT32 ReceiveBufferSize; + UINT32 SendBufferSize; + UINT32 MaxSynBackLog; + UINT32 ConnectionTimeout; + UINT32 DataRetries; + UINT32 FinTimeout; + UINT32 TimeWaitTimeout; + UINT32 KeepAliveProbes; + UINT32 KeepAliveTime; + UINT32 KeepAliveInterval; + BOOLEAN EnableNagle; + BOOLEAN EnableTimeStamp; + BOOLEAN EnableWindowScaling; + BOOLEAN EnableSelectiveAck; + BOOLEAN EnablePAthMtuDiscovery; +} EFI_TCP4_OPTION; + +typedef struct { + // Receiving Filters + // I/O parameters + UINT8 TypeOfService; + UINT8 TimeToLive; + + // Access Point + EFI_TCP4_ACCESS_POINT AccessPoint; + + // TCP Control Options + EFI_TCP4_OPTION *ControlOption; +} EFI_TCP4_CONFIG_DATA; + +typedef enum { + Tcp4StateClosed = 0, + Tcp4StateListen = 1, + Tcp4StateSynSent = 2, + Tcp4StateSynReceived = 3, + Tcp4StateEstablished = 4, + Tcp4StateFinWait1 = 5, + Tcp4StateFinWait2 = 6, + Tcp4StateClosing = 7, + Tcp4StateTimeWait = 8, + Tcp4StateCloseWait = 9, + Tcp4StateLastAck = 10 +} EFI_TCP4_CONNECTION_STATE; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_GET_MODE_DATA) ( + IN struct _EFI_TCP4 *This, + OUT EFI_TCP4_CONNECTION_STATE *Tcp4State OPTIONAL, + OUT EFI_TCP4_CONFIG_DATA *Tcp4ConfigData OPTIONAL, + OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CONFIGURE) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_CONFIG_DATA *TcpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_ROUTES) ( + IN struct _EFI_TCP4 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv4_ADDRESS *SubnetAddress, + IN EFI_IPv4_ADDRESS *SubnetMask, + IN EFI_IPv4_ADDRESS *GatewayAddress +); + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; +} EFI_TCP4_COMPLETION_TOKEN; + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; +} EFI_TCP4_CONNECTION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CONNECT) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_CONNECTION_TOKEN *ConnectionToken + ); + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; + EFI_HANDLE NewChildHandle; +} EFI_TCP4_LISTEN_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_ACCEPT) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_LISTEN_TOKEN *ListenToken + ); + +#define EFI_CONNECTION_FIN EFIERR(104) +#define EFI_CONNECTION_RESET EFIERR(105) +#define EFI_CONNECTION_REFUSED EFIERR(106) + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_TCP4_FRAGMENT_DATA; + +typedef struct { + BOOLEAN UrgentFlag; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP4_RECEIVE_DATA; + +typedef struct { + BOOLEAN Push; + BOOLEAN Urgent; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP4_TRANSMIT_DATA; + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; + union { + EFI_TCP4_RECEIVE_DATA *RxData; + EFI_TCP4_TRANSMIT_DATA *TxData; + } Packet; +} EFI_TCP4_IO_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_TRANSMIT) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_IO_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_RECEIVE) ( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_IO_TOKEN *Token + ); + +typedef struct { + EFI_TCP4_COMPLETION_TOKEN CompletionToken; + BOOLEAN AbortOnClose; +} EFI_TCP4_CLOSE_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CLOSE)( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_CLOSE_TOKEN *CloseToken + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_CANCEL)( + IN struct _EFI_TCP4 *This, + IN EFI_TCP4_COMPLETION_TOKEN *Token OPTIONAL +); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP4_POLL) ( + IN struct _EFI_TCP4 *This + ); + +typedef struct _EFI_TCP4 { + EFI_TCP4_GET_MODE_DATA GetModeData; + EFI_TCP4_CONFIGURE Configure; + EFI_TCP4_ROUTES Routes; + EFI_TCP4_CONNECT Connect; + EFI_TCP4_ACCEPT Accept; + EFI_TCP4_TRANSMIT Transmit; + EFI_TCP4_RECEIVE Receive; + EFI_TCP4_CLOSE Close; + EFI_TCP4_CANCEL Cancel; + EFI_TCP4_POLL Poll; +} EFI_TCP4; + +typedef enum { + Tcp6StateClosed = 0, + Tcp6StateListen = 1, + Tcp6StateSynSent = 2, + Tcp6StateSynReceived = 3, + Tcp6StateEstablished = 4, + Tcp6StateFinWait1 = 5, + Tcp6StateFinWait2 = 6, + Tcp6StateClosing = 7, + Tcp6StateTimeWait = 8, + Tcp6StateCloseWait = 9, + Tcp6StateLastAck = 10 +} EFI_TCP6_CONNECTION_STATE; + +typedef struct { + EFI_IPv6_ADDRESS StationAddress; + UINT16 StationPort; + EFI_IPv6_ADDRESS RemoteAddress; + UINT16 RemotePort; + BOOLEAN ActiveFlag; +} EFI_TCP6_ACCESS_POINT; + +typedef struct { + UINT32 ReceiveBufferSize; + UINT32 SendBufferSize; + UINT32 MaxSynBackLog; + UINT32 ConnectionTimeout; + UINT32 DataRetries; + UINT32 FinTimeout; + UINT32 TimeWaitTimeout; + UINT32 KeepAliveProbes; + UINT32 KeepAliveTime; + UINT32 KeepAliveInterval; + BOOLEAN EnableNagle; + BOOLEAN EnableTimeStamp; + BOOLEAN EnableWindbowScaling; + BOOLEAN EnableSelectiveAck; + BOOLEAN EnablePathMtuDiscovery; +} EFI_TCP6_OPTION; + +typedef struct { + UINT8 TrafficClass; + UINT8 HopLimit; + EFI_TCP6_ACCESS_POINT AccessPoint; + EFI_TCP6_OPTION *ControlOption; +} EFI_TCP6_CONFIG_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_GET_MODE_DATA) ( + IN struct _EFI_TCP6 *This, + OUT EFI_TCP6_CONNECTION_STATE *Tcp6State OPTIONAL, + OUT EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL, + OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CONFIGURE) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_CONFIG_DATA *Tcp6ConfigData OPTIONAL + ); + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; +} EFI_TCP6_COMPLETION_TOKEN; + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; +} EFI_TCP6_CONNECTION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CONNECT) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_CONNECTION_TOKEN *ConnectionToken + ); + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; + EFI_HANDLE NewChildHandle; +} EFI_TCP6_LISTEN_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_ACCEPT) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_LISTEN_TOKEN *ListenToken + ); + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_TCP6_FRAGMENT_DATA; + +typedef struct { + BOOLEAN UrgentFlag; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP6_RECEIVE_DATA; + +typedef struct { + BOOLEAN Push; + BOOLEAN Urgent; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_TCP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_TCP6_TRANSMIT_DATA; + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; + union { + EFI_TCP6_RECEIVE_DATA *RxData; + EFI_TCP6_TRANSMIT_DATA *TxData; + } Packet; +} EFI_TCP6_IO_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_TRANSMIT) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_IO_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_RECEIVE) ( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_IO_TOKEN *Token + ); + +typedef struct { + EFI_TCP6_COMPLETION_TOKEN CompletionToken; + BOOLEAN AbortOnClose; +} EFI_TCP6_CLOSE_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CLOSE)( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_CLOSE_TOKEN *CloseToken + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_CANCEL)( + IN struct _EFI_TCP6 *This, + IN EFI_TCP6_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TCP6_POLL) ( + IN struct _EFI_TCP6 *This + ); + +typedef struct _EFI_TCP6 { + EFI_TCP6_GET_MODE_DATA GetModeData; + EFI_TCP6_CONFIGURE Configure; + EFI_TCP6_CONNECT Connect; + EFI_TCP6_ACCEPT Accept; + EFI_TCP6_TRANSMIT Transmit; + EFI_TCP6_RECEIVE Receive; + EFI_TCP6_CLOSE Close; + EFI_TCP6_CANCEL Cancel; + EFI_TCP6_POLL Poll; +} EFI_TCP6; + +#endif /* _EFI_TCP_H */ diff --git a/efi64/include/efi/efiudp.h b/efi64/include/efi/efiudp.h new file mode 100644 index 00000000..7c8b467e --- /dev/null +++ b/efi64/include/efi/efiudp.h @@ -0,0 +1,272 @@ +#ifndef _EFI_UDP_H +#define _EFI_UDP_H + + +/*++ +Copyright (c) 2013 Intel Corporation + +--*/ + +#define EFI_UDP4_SERVICE_BINDING_PROTOCOL \ + { 0x83f01464, 0x99bd, 0x45e5, {0xb3, 0x83, 0xaf, 0x63, 0x05, 0xd8, 0xe9, 0xe6} } + +#define EFI_UDP4_PROTOCOL \ + { 0x3ad9df29, 0x4501, 0x478d, {0xb1, 0xf8, 0x7f, 0x7f, 0xe7, 0x0e, 0x50, 0xf3} } + +#define EFI_UDP6_SERVICE_BINDING_PROTOCOL \ + { 0x66ed4721, 0x3c98, 0x4d3e, {0x81, 0xe3, 0xd0, 0x3d, 0xd3, 0x9a, 0x72, 0x54} } + +#define EFI_UDP6_PROTOCOL \ + { 0x4f948815, 0xb4b9, 0x43cb, {0x8a, 0x33, 0x90, 0xe0, 0x60, 0xb3,0x49, 0x55} } + +INTERFACE_DECL(_EFI_UDP4); +INTERFACE_DECL(_EFI_UDP6); + +typedef struct { + BOOLEAN AcceptBroadcast; + BOOLEAN AcceptPromiscuous; + BOOLEAN AcceptAnyPort; + BOOLEAN AllowDuplicatePort; + UINT8 TypeOfService; + UINT8 TimeToLive; + BOOLEAN DoNotFragment; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; + BOOLEAN UseDefaultAddress; + EFI_IPv4_ADDRESS StationAddress; + EFI_IPv4_ADDRESS SubnetMask; + UINT16 StationPort; + EFI_IPv4_ADDRESS RemoteAddress; + UINT16 RemotePort; +} EFI_UDP4_CONFIG_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_GET_MODE_DATA) ( + IN struct _EFI_UDP4 *This, + OUT EFI_UDP4_CONFIG_DATA *Udp4ConfigData OPTIONAL, + OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_CONFIGURE) ( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_CONFIG_DATA *UdpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_GROUPS) ( + IN struct _EFI_UDP4 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv4_ADDRESS *MulticastAddress OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_ROUTES) ( + IN struct _EFI_UDP4 *This, + IN BOOLEAN DeleteRoute, + IN EFI_IPv4_ADDRESS *SubnetAddress, + IN EFI_IPv4_ADDRESS *SubnetMask, + IN EFI_IPv4_ADDRESS *GatewayAddress + ); + +#define EFI_NETWORK_UNREACHABLE EFIERR(100) +#define EFI_HOST_UNREACHABLE EFIERR(101) +#define EFI_PROTOCOL_UNREACHABLE EFIERR(102) +#define EFI_PORT_UNREACHABLE EFIERR(103) + +typedef struct { + EFI_IPv4_ADDRESS SourceAddress; + UINT16 SourcePort; + EFI_IPv4_ADDRESS DestinationAddress; + UINT16 DestinationPort; +} EFI_UDP4_SESSION_DATA; + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_UDP4_FRAGMENT_DATA; + +typedef struct { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + EFI_UDP4_SESSION_DATA UdpSession; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP4_RECEIVE_DATA; + +typedef struct { + EFI_UDP4_SESSION_DATA *UdpSessionData; + EFI_IPv4_ADDRESS *GatewayAddress; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP4_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP4_TRANSMIT_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_UDP4_RECEIVE_DATA *RxData; + EFI_UDP4_TRANSMIT_DATA *TxData; + } Packet; +} EFI_UDP4_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_TRANSMIT) ( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_RECEIVE) ( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_CANCEL)( + IN struct _EFI_UDP4 *This, + IN EFI_UDP4_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP4_POLL) ( + IN struct _EFI_UDP4 *This + ); + +typedef struct _EFI_UDP4 { + EFI_UDP4_GET_MODE_DATA GetModeData; + EFI_UDP4_CONFIGURE Configure; + EFI_UDP4_GROUPS Groups; + EFI_UDP4_ROUTES Routes; + EFI_UDP4_TRANSMIT Transmit; + EFI_UDP4_RECEIVE Receive; + EFI_UDP4_CANCEL Cancel; + EFI_UDP4_POLL Poll; +} EFI_UDP4; + +typedef struct { + BOOLEAN AcceptPromiscuous; + BOOLEAN AcceptAnyPort; + BOOLEAN AllowDuplicatePort; + UINT8 TrafficClass; + UINT8 HopLimit; + UINT32 ReceiveTimeout; + UINT32 TransmitTimeout; + EFI_IPv6_ADDRESS StationAddress; + UINT16 StationPort; + EFI_IPv6_ADDRESS RemoteAddress; + UINT16 RemotePort; +} EFI_UDP6_CONFIG_DATA; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_GET_MODE_DATA) ( + IN struct _EFI_UDP6 *This, + OUT EFI_UDP6_CONFIG_DATA *Udp6ConfigData OPTIONAL, + OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, + OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, + OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_CONFIGURE) ( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_CONFIG_DATA *UdpConfigData OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_GROUPS) ( + IN struct _EFI_UDP6 *This, + IN BOOLEAN JoinFlag, + IN EFI_IPv6_ADDRESS *MulticastAddress OPTIONAL + ); + +typedef struct { + EFI_IPv6_ADDRESS SourceAddress; + UINT16 SourcePort; + EFI_IPv6_ADDRESS DestinationAddress; + UINT16 DestinationPort; +} EFI_UDP6_SESSION_DATA; + +typedef struct { + UINT32 FragmentLength; + VOID *FragmentBuffer; +} EFI_UDP6_FRAGMENT_DATA; + +typedef struct { + EFI_TIME TimeStamp; + EFI_EVENT RecycleSignal; + EFI_UDP6_SESSION_DATA UdpSession; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP6_RECEIVE_DATA; + +typedef struct { + EFI_UDP6_SESSION_DATA *UdpSessionData; + UINT32 DataLength; + UINT32 FragmentCount; + EFI_UDP6_FRAGMENT_DATA FragmentTable[1]; +} EFI_UDP6_TRANSMIT_DATA; + +typedef struct { + EFI_EVENT Event; + EFI_STATUS Status; + union { + EFI_UDP6_RECEIVE_DATA *RxData; + EFI_UDP6_TRANSMIT_DATA *TxData; + } Packet; +} EFI_UDP6_COMPLETION_TOKEN; + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_TRANSMIT) ( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_RECEIVE) ( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_COMPLETION_TOKEN *Token + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_CANCEL)( + IN struct _EFI_UDP6 *This, + IN EFI_UDP6_COMPLETION_TOKEN *Token OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UDP6_POLL) ( + IN struct _EFI_UDP6 *This + ); + +typedef struct _EFI_UDP6 { + EFI_UDP6_GET_MODE_DATA GetModeData; + EFI_UDP6_CONFIGURE Configure; + EFI_UDP6_GROUPS Groups; + EFI_UDP6_TRANSMIT Transmit; + EFI_UDP6_RECEIVE Receive; + EFI_UDP6_CANCEL Cancel; + EFI_UDP6_POLL Poll; +} EFI_UDP6; + +#endif /* _EFI_UDP_H */ diff --git a/efi64/include/efi/efiui.h b/efi64/include/efi/efiui.h new file mode 100644 index 00000000..73419437 --- /dev/null +++ b/efi64/include/efi/efiui.h @@ -0,0 +1,54 @@ +#ifndef _EFI_UI_H +#define _EFI_UI_H + +/*++ + +Copyright (c) 200 Intel Corporation + +Module Name: + + EfiUi.h + +Abstract: + Protocol used to build User Interface (UI) stuff. + + This protocol is just data. It is a multi dimentional array. + For each string there is an array of UI_STRING_ENTRY. Each string + is for a different language translation of the same string. The list + is terminated by a NULL UiString. There can be any number of + UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array + entry contains all zeros. + + Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY. + The String, it's NULL terminator, and the NULL terminator for the entire + thing. + + +Revision History + +--*/ + +#define EFI_UI_PROTOCOL \ + { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + + +typedef enum { + UiDeviceString, + UiVendorString, + UiMaxString +} UI_STRING_TYPE; + +typedef struct { + ISO_639_2 *LangCode; + CHAR16 *UiString; +} UI_STRING_ENTRY; + +#define EFI_UI_VERSION 0x00010000 + +typedef struct _UI_INTERFACE { + UINT32 Version; + UI_STRING_ENTRY *Entry; +} UI_INTERFACE; + + +#endif diff --git a/efi64/include/efi/libsmbios.h b/efi64/include/efi/libsmbios.h new file mode 100644 index 00000000..8f1a28e5 --- /dev/null +++ b/efi64/include/efi/libsmbios.h @@ -0,0 +1,132 @@ +#ifndef _LIB_SMBIOS_H +#define _LIB_SMBIOS_H +/*++ + +Copyright (c) 2000 Intel Corporation + +Module Name: + + LibSmbios.h + +Abstract: + + Lib include for SMBIOS services. Used to get system serial number and GUID + +Revision History + +--*/ + +// +// Define SMBIOS tables. +// +#pragma pack(1) +typedef struct { + UINT8 AnchorString[4]; + UINT8 EntryPointStructureChecksum; + UINT8 EntryPointLength; + UINT8 MajorVersion; + UINT8 MinorVersion; + UINT16 MaxStructureSize; + UINT8 EntryPointRevision; + UINT8 FormattedArea[5]; + UINT8 IntermediateAnchorString[5]; + UINT8 IntermediateChecksum; + UINT16 TableLength; + UINT32 TableAddress; + UINT16 NumberOfSmbiosStructures; + UINT8 SmbiosBcdRevision; +} SMBIOS_STRUCTURE_TABLE; + +// +// Please note that SMBIOS structures can be odd byte aligned since the +// unformated section of each record is a set of arbitrary size strings. +// + +typedef struct { + UINT8 Type; + UINT8 Length; + UINT8 Handle[2]; +} SMBIOS_HEADER; + +typedef UINT8 SMBIOS_STRING; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Vendor; + SMBIOS_STRING BiosVersion; + UINT8 BiosSegment[2]; + SMBIOS_STRING BiosReleaseDate; + UINT8 BiosSize; + UINT8 BiosCharacteristics[8]; +} SMBIOS_TYPE0; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Manufacturer; + SMBIOS_STRING ProductName; + SMBIOS_STRING Version; + SMBIOS_STRING SerialNumber; + + // + // always byte copy this data to prevent alignment faults! + // + EFI_GUID Uuid; + + UINT8 WakeUpType; +} SMBIOS_TYPE1; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Manufacturer; + SMBIOS_STRING ProductName; + SMBIOS_STRING Version; + SMBIOS_STRING SerialNumber; +} SMBIOS_TYPE2; + +typedef struct { + SMBIOS_HEADER Hdr; + SMBIOS_STRING Manufacturer; + UINT8 Type; + SMBIOS_STRING Version; + SMBIOS_STRING SerialNumber; + SMBIOS_STRING AssetTag; + UINT8 BootupState; + UINT8 PowerSupplyState; + UINT8 ThermalState; + UINT8 SecurityStatus; + UINT8 OemDefined[4]; +} SMBIOS_TYPE3; + +typedef struct { + SMBIOS_HEADER Hdr; + UINT8 Socket; + UINT8 ProcessorType; + UINT8 ProcessorFamily; + SMBIOS_STRING ProcessorManufacture; + UINT8 ProcessorId[8]; + SMBIOS_STRING ProcessorVersion; + UINT8 Voltage; + UINT8 ExternalClock[2]; + UINT8 MaxSpeed[2]; + UINT8 CurrentSpeed[2]; + UINT8 Status; + UINT8 ProcessorUpgrade; + UINT8 L1CacheHandle[2]; + UINT8 L2CacheHandle[2]; + UINT8 L3CacheHandle[2]; +} SMBIOS_TYPE4; + +typedef union { + SMBIOS_HEADER *Hdr; + SMBIOS_TYPE0 *Type0; + SMBIOS_TYPE1 *Type1; + SMBIOS_TYPE2 *Type2; + SMBIOS_TYPE3 *Type3; + SMBIOS_TYPE4 *Type4; + UINT8 *Raw; +} SMBIOS_STRUCTURE_POINTER; +#pragma pack() + + +#endif + diff --git a/efi64/include/efi/pci22.h b/efi64/include/efi/pci22.h new file mode 100644 index 00000000..b94f5198 --- /dev/null +++ b/efi64/include/efi/pci22.h @@ -0,0 +1,193 @@ +#ifndef _PCI22_H +#define _PCI22_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + pci22.h + +Abstract: + Support for PCI 2.2 standard. + + + + +Revision History + +--*/ + +#ifdef SOFT_SDV +#define PCI_MAX_BUS 1 +#else +#define PCI_MAX_BUS 255 +#endif + +#define PCI_MAX_DEVICE 31 +#define PCI_MAX_FUNC 7 + +// +// Command +// +#define PCI_VGA_PALETTE_SNOOP_DISABLED 0x20 + +#pragma pack(1) +typedef struct { + UINT16 VendorId; + UINT16 DeviceId; + UINT16 Command; + UINT16 Status; + UINT8 RevisionID; + UINT8 ClassCode[3]; + UINT8 CacheLineSize; + UINT8 LaytencyTimer; + UINT8 HeaderType; + UINT8 BIST; +} PCI_DEVICE_INDEPENDENT_REGION; + +typedef struct { + UINT32 Bar[6]; + UINT32 CISPtr; + UINT16 SubsystemVendorID; + UINT16 SubsystemID; + UINT32 ExpansionRomBar; + UINT32 Reserved[2]; + UINT8 InterruptLine; + UINT8 InterruptPin; + UINT8 MinGnt; + UINT8 MaxLat; +} PCI_DEVICE_HEADER_TYPE_REGION; + +typedef struct { + PCI_DEVICE_INDEPENDENT_REGION Hdr; + PCI_DEVICE_HEADER_TYPE_REGION Device; +} PCI_TYPE00; + +typedef struct { + UINT32 Bar[2]; + UINT8 PrimaryBus; + UINT8 SecondaryBus; + UINT8 SubordinateBus; + UINT8 SecondaryLatencyTimer; + UINT8 IoBase; + UINT8 IoLimit; + UINT16 SecondaryStatus; + UINT16 MemoryBase; + UINT16 MemoryLimit; + UINT16 PrefetchableMemoryBase; + UINT16 PrefetchableMemoryLimit; + UINT32 PrefetchableBaseUpper32; + UINT32 PrefetchableLimitUpper32; + UINT16 IoBaseUpper16; + UINT16 IoLimitUpper16; + UINT32 Reserved; + UINT32 ExpansionRomBAR; + UINT8 InterruptLine; + UINT8 InterruptPin; + UINT16 BridgeControl; +} PCI_BRIDGE_CONTROL_REGISTER; + +#define PCI_CLASS_DISPLAY_CTRL 0x03 +#define PCI_CLASS_VGA 0x00 + +#define PCI_CLASS_BRIDGE 0x06 +#define PCI_CLASS_ISA 0x01 +#define PCI_CLASS_ISA_POSITIVE_DECODE 0x80 + +#define PCI_CLASS_NETWORK 0x02 +#define PCI_CLASS_ETHERNET 0x00 + +#define HEADER_TYPE_DEVICE 0x00 +#define HEADER_TYPE_PCI_TO_PCI_BRIDGE 0x01 +#define HEADER_TYPE_MULTI_FUNCTION 0x80 +#define HEADER_LAYOUT_CODE 0x7f + +#define IS_PCI_BRIDGE(_p) ((((_p)->Hdr.HeaderType) & HEADER_LAYOUT_CODE) == HEADER_TYPE_PCI_TO_PCI_BRIDGE) +#define IS_PCI_MULTI_FUNC(_p) (((_p)->Hdr.HeaderType) & HEADER_TYPE_MULTI_FUNCTION) + +typedef struct { + PCI_DEVICE_INDEPENDENT_REGION Hdr; + PCI_BRIDGE_CONTROL_REGISTER Bridge; +} PCI_TYPE01; + +typedef struct { + UINT8 Register; + UINT8 Function; + UINT8 Device; + UINT8 Bus; + UINT8 Reserved[4]; +} DEFIO_PCI_ADDR; + +typedef struct { + UINT32 Reg : 8; + UINT32 Func : 3; + UINT32 Dev : 5; + UINT32 Bus : 8; + UINT32 Reserved: 7; + UINT32 Enable : 1; +} PCI_CONFIG_ACCESS_CF8; + +#pragma pack() + +#define EFI_ROOT_BRIDGE_LIST 'eprb' +typedef struct { + UINTN Signature; + + UINT16 BridgeNumber; + UINT16 PrimaryBus; + UINT16 SubordinateBus; + + EFI_DEVICE_PATH *DevicePath; + + LIST_ENTRY Link; +} PCI_ROOT_BRIDGE_ENTRY; + + +#define PCI_EXPANSION_ROM_HEADER_SIGNATURE 0xaa55 +#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1 +#define PCI_DATA_STRUCTURE_SIGNATURE EFI_SIGNATURE_32('P','C','I','R') + +#pragma pack(1) +typedef struct { + UINT16 Signature; // 0xaa55 + UINT8 Reserved[0x16]; + UINT16 PcirOffset; +} PCI_EXPANSION_ROM_HEADER; + + +typedef struct { + UINT16 Signature; // 0xaa55 + UINT16 InitializationSize; + UINT16 EfiSignature; // 0x0EF1 + UINT16 EfiSubsystem; + UINT16 EfiMachineType; + UINT8 Reserved[0x0A]; + UINT16 EfiImageHeaderOffset; + UINT16 PcirOffset; +} EFI_PCI_EXPANSION_ROM_HEADER; + +typedef struct { + UINT32 Signature; // "PCIR" + UINT16 VendorId; + UINT16 DeviceId; + UINT16 Reserved0; + UINT16 Length; + UINT8 Revision; + UINT8 ClassCode[3]; + UINT16 ImageLength; + UINT16 CodeRevision; + UINT8 CodeType; + UINT8 Indicator; + UINT16 Reserved1; +} PCI_DATA_STRUCTURE; +#pragma pack() + +#endif + + + + + + diff --git a/efi64/include/efi/protocol/adapterdebug.h b/efi64/include/efi/protocol/adapterdebug.h new file mode 100644 index 00000000..d70af5df --- /dev/null +++ b/efi64/include/efi/protocol/adapterdebug.h @@ -0,0 +1,32 @@ +#ifndef _ADAPTER_DEBUG_H +#define _ADAPTER_DEBUG_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + AdapterDebug.h + +Abstract: + + Protocol to debug the EDD 3.0 enablement of BIOS option ROMs + + + +Revision History + +--*/ + +// {82F86881-282B-11d4-BC7D-0080C73C8881} +#define ADAPTER_DEBUG_PROTOCOL \ +{ 0x82f86881, 0x282b, 0x11d4, {0xbc, 0x7d, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + +// +// This protocol points to the BIOS_LEGACY_DRIVE data structure +// see edd.h for more details +// + +#endif + diff --git a/efi64/include/efi/protocol/eficonsplit.h b/efi64/include/efi/protocol/eficonsplit.h new file mode 100644 index 00000000..15adb925 --- /dev/null +++ b/efi64/include/efi/protocol/eficonsplit.h @@ -0,0 +1,32 @@ +#ifndef _EFI_CONFORK_H +#define _EFI_CONFORK_H +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + +Abstract: + + + +Revision History + +--*/ + + + +// +// ConOut Forker Protocol +// + +#define TEXT_OUT_SPLITER_PROTOCOL \ + { 0x56d830a0, 0x7e7a, 0x11d3, {0xbb, 0xa0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +#define ERROR_OUT_SPLITER_PROTOCOL \ + { 0xf0ba9039, 0x68f1, 0x425e, {0xaa, 0x7f, 0xd9, 0xaa, 0xf9, 0x1b, 0x82, 0xa1}} + +#define TEXT_IN_SPLITER_PROTOCOL \ + { 0xf9a3c550, 0x7fb5, 0x11d3, {0xbb, 0xa0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +#endif diff --git a/efi64/include/efi/protocol/efidbg.h b/efi64/include/efi/protocol/efidbg.h new file mode 100644 index 00000000..1f95a70b --- /dev/null +++ b/efi64/include/efi/protocol/efidbg.h @@ -0,0 +1,210 @@ +/* + * Copyright (c) 1999, 2000 + * Intel Corporation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * + * This product includes software developed by Intel Corporation and + * its contributors. + * + * 4. Neither the name of Intel Corporation or its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION AND CONTRIBUTORS ``AS IS'' + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + * + */ + + +#ifndef _EFIDBG_H_ +#define _EFIDBG_H_ + +#include "eficontext.h" +#include "efiser.h" + +typedef struct _DEBUGPORT_16550_CONFIG_DATA { + UINT32 PortAddress; + UINT64 BaudRate; + UINT32 ReceiveFifoDepth; + UINT32 Timeout; + UINT8 Parity; + UINT8 DataBits; + UINT8 StopBits; + UINT32 ControlMask; + BOOLEAN RtsCtsEnable; // RTS, CTS control +} DEBUGPORT_16550_CONFIG_DATA; + +typedef struct _DEBUGPORT_16550_DEVICE_PATH { + EFI_DEVICE_PATH Header; + DEBUGPORT_16550_CONFIG_DATA ConfigData; +} DEBUGPORT_16550_DEVICE_PATH; + +typedef union { + EFI_DEVICE_PATH DevPath; + DEBUGPORT_16550_DEVICE_PATH Uart; + // add new types of debugport device paths to this union... +} DEBUGPORT_DEV_PATH; + + +// +// Debug Support protocol {2755590C-6F3C-42FA-9EA4-A3BA543CDA25} +// + +#define DEBUG_SUPPORT_PROTOCOL \ +{ 0x2755590C, 0x6F3C, 0x42fa, 0x9E, 0xA4, 0xA3, 0xBA, 0x54, 0x3C, 0xDA, 0x25 } + + +typedef UINTN EXCEPTION_TYPE; + +typedef +VOID +(*EXCEPTION_HANDLER) ( + IN EXCEPTION_TYPE ExceptionType, + IN SYSTEM_CONTEXT *SystemContext + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REGISTER_TIMER_TICK_CALLBACK) ( + IN struct _EFI_DEBUG_SUPPORT_INTERFACE *This, + IN EXCEPTION_HANDLER TimerTickCallback + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_REGISTER_EXCEPTION_HANDLER) ( + IN struct _EFI_DEBUG_SUPPORT_INTERFACE *This, + IN EXCEPTION_HANDLER ExceptionHandler, + IN EXCEPTION_TYPE ExceptionType + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_IP_CALL_TRACE) ( + IN struct _EFI_DEBUG_SUPPORT_INTERFACE *This + ); + + +#define EFI_DEBUG_SUPPORT_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_DEBUG_SUPPORT_INTERFACE { + UINT32 Revision; + EFI_REGISTER_TIMER_TICK_CALLBACK RegisterTimerTickCallback; + EFI_REGISTER_EXCEPTION_HANDLER RegisterExceptionHandler; + EFI_IP_CALL_TRACE IpCallTrace; +} EFI_DEBUG_SUPPORT_INTERFACE; + + +// +// Debugport io protocol {EBA4E8D2-3858-41EC-A281-2647BA9660D0} +// + +#define DEBUGPORT_IO_PROTOCOL \ +{ 0XEBA4E8D2, 0X3858, 0X41EC, 0XA2, 0X81, 0X26, 0X47, 0XBA, 0X96, 0X60, 0XD0 } + + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUGPORT_IO_RESET) ( + IN struct _EFI_DEBUGPORT_IO_INTERFACE *This + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUGPORT_IO_READ) ( + IN struct _EFI_DEBUGPORT_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUGPORT_IO_WRITE) ( + IN struct _EFI_DEBUGPORT_IO_INTERFACE *This, + IN OUT UINTN *BufferSize, + IN VOID *Buffer + ); + +#define EFI_DEBUGPORT_IO_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_DEBUGPORT_IO_INTERFACE { + UINT32 Revision; + EFI_DEBUGPORT_IO_READ Read; + EFI_DEBUGPORT_IO_WRITE Write; + EFI_DEBUGPORT_IO_RESET Reset; +} EFI_DEBUGPORT_IO_INTERFACE; + + +// +// Debugport UART16550 control protocol {628EA978-4C26-4605-BC02-A42A496917DD} +// + +#define DEBUGPORT_UART16550_CONTROL_PROTOCOL \ +{ 0X628EA978, 0X4C26, 0X4605, 0XBC, 0X2, 0XA4, 0X2A, 0X49, 0X69, 0X17, 0XDD } + +// Note: The definitions for EFI_PARITY_TYPE, EFI_STOP_BITS_TYPE, and +// SERIAL_IO_MODE are included from efiser.h + +typedef +EFI_STATUS +(EFIAPI *EFI_UART16550_SET_ATTRIBUTES) ( + IN struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE *This, + IN UINT64 BaudRate, + IN UINT32 ReceiveFifoDepth, + IN UINT32 Timeout, + IN EFI_PARITY_TYPE Parity, + IN UINT8 DataBits, + IN EFI_STOP_BITS_TYPE StopBits + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UART16550_SET_CONTROL_BITS) ( + IN struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE *This, + IN UINT32 Control + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_UART16550_GET_CONTROL_BITS) ( + IN struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE *This, + OUT UINT32 *Control + ); + +#define EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE_REVISION 0x00010000 + +typedef struct _EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE { + UINT32 Revision; + EFI_UART16550_SET_ATTRIBUTES SetAttributes; + EFI_UART16550_SET_CONTROL_BITS SetControl; + EFI_UART16550_GET_CONTROL_BITS GetControl; + DEBUGPORT_16550_CONFIG_DATA *Mode; +} EFI_DEBUGPORT_UART16550_CONTROL_INTERFACE; + + +#define DEVICE_PATH_DEBUGPORT DEBUGPORT_IO_PROTOCOL + +#endif /* _EFIDBG_H_ */ diff --git a/efi64/include/efi/protocol/efivar.h b/efi64/include/efi/protocol/efivar.h new file mode 100644 index 00000000..92dc506a --- /dev/null +++ b/efi64/include/efi/protocol/efivar.h @@ -0,0 +1,133 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + +Abstract: + + + +Revision History + +--*/ + + + +// +// The variable store protocol interface is specific to the reference +// implementation. The initialization code adds variable store devices +// to the system, and the FW connects to the devices to provide the +// variable store interfaces through these devices. +// + +// +// Variable Store Device protocol +// + +#define VARIABLE_STORE_PROTOCOL \ + { 0xf088cd91, 0xa046, 0x11d2, {0x8e, 0x42, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } + +INTERFACE_DECL(_EFI_VARIABLE_STORE); + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_CLEAR) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN OUT VOID *Scratch + ); + + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_READ) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN UINTN Offset, + IN UINTN BufferSize, + OUT VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_UPDATE) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN UINTN Offset, + IN UINTN BufferSize, + IN VOID *Buffer + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_STORE_SIZE) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN NoBanks + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_TRANSACTION_UPDATE) ( + IN struct _EFI_VARIABLE_STORE *This, + IN UINTN BankNo, + IN VOID *NewContents + ); + +typedef struct _EFI_VARIABLE_STORE { + + // + // Number of banks and bank size + // + + UINT32 Attributes; + UINT32 BankSize; + UINT32 NoBanks; + + // + // Functions to access the storage banks + // + + EFI_STORE_CLEAR ClearStore; + EFI_STORE_READ ReadStore; + EFI_STORE_UPDATE UpdateStore; + EFI_STORE_SIZE SizeStore OPTIONAL; + EFI_TRANSACTION_UPDATE TransactionUpdate OPTIONAL; + +} EFI_VARIABLE_STORE; + + +// +// +// ClearStore() - A function to clear the requested storage bank. A cleared +// bank contains all "on" bits. +// +// ReadStore() - Read data from the requested store. +// +// UpdateStore() - Updates data on the requested store. The FW will only +// ever issue updates to clear bits in the store. Updates must be +// performed in LSb to MSb order of the update buffer. +// +// SizeStore() - An optional function for non-runtime stores that can be +// dynamically sized. The FW will only ever increase or decrease the store +// by 1 banksize at a time, and it is always adding or removing a bank from +// the end of the store. +// +// By default the FW will update variables and storage banks in an +// "atomic" manner by keeping 1 old copy of the data during an update, +// and recovering appropiately if the power is lost during the middle +// of an operation. To do this the FW needs to have multiple banks +// of storage dedicated to its use. If that's not possible, the driver +// can implement an atomic bank update function and the FW will allow +// 1 bank in this case. (It will allow any number of banks, +// but it won't require an "extra" bank to provide its bank transaction +// function). +// +// TransactionUpdate() - An optional function that can clear & update an +// entire bank in an "atomic" fashion. If the operation fails in the +// middle the driver is responsible for having either the previous copy +// of the bank's data or the new copy. A copy that's partially written +// is not valid as internal data settings may get lost. Supply this +// function only when needed. +// + diff --git a/efi64/include/efi/protocol/intload.h b/efi64/include/efi/protocol/intload.h new file mode 100644 index 00000000..fb24e3f4 --- /dev/null +++ b/efi64/include/efi/protocol/intload.h @@ -0,0 +1,27 @@ +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + intload + +Abstract: + + EFI support for loading internally linked in apps + + + +Revision History + +--*/ + +#ifndef _INTERNAL_LOAD_INCLUDE_ +#define _INTERNAL_LOAD_INCLUDE_ + +// {D65A6B8C-71E5-4df0-A909-F0D2992B5AA9} +#define INTERNAL_SHELL_GUID \ + { 0xd65a6b8c, 0x71e5, 0x4df0, {0xa9, 0x09, 0xf0, 0xd2, 0x99, 0x2b, 0x5a, 0xa9} } + + +#endif diff --git a/efi64/include/efi/protocol/legacyboot.h b/efi64/include/efi/protocol/legacyboot.h new file mode 100644 index 00000000..16e94e7e --- /dev/null +++ b/efi64/include/efi/protocol/legacyboot.h @@ -0,0 +1,119 @@ +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + legacyboot + +Abstract: + + EFI support for legacy boot + + + +Revision History + +--*/ + +#ifndef _LEGACY_BOOT_INCLUDE_ +#define _LEGACY_BOOT_INCLUDE_ + +#define LEGACY_BOOT_PROTOCOL \ + { 0x376e5eb2, 0x30e4, 0x11d3, { 0xba, 0xe5, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81 } } + +#pragma pack(1) + +// +// BBS 1.01 (See Appendix A) IPL and BCV Table Entry Data structure. +// Seg:Off pointers have been converted to EFI pointers in this data structure +// This is the structure that also maps to the EFI device path for the boot selection +// +typedef struct { + UINT16 DeviceType; + UINT16 StatusFlag; + UINT32 Reserved; + VOID *BootHandler; // Not an EFI entry point + CHAR8 *DescString; +} BBS_TABLE_ENTRY; +#pragma pack() + +typedef +EFI_STATUS +(EFIAPI *LEGACY_BOOT_CALL) ( + IN EFI_DEVICE_PATH *DevicePath + ); + + +// +// BBS support functions +// PnP Call numbers and BiosSelector hidden in implementation +// + +typedef enum { + IplRelative, + BcvRelative +} BBS_TYPE; + +INTERFACE_DECL(_LEGACY_BOOT_INTERFACE); + +// +// == PnP Function 0x60 then BbsVersion == 0x0101 if this call fails then BbsVersion == 0x0000 +// + +// +// == PnP Function 0x61 +// +typedef +EFI_STATUS +(EFIAPI *GET_DEVICE_COUNT) ( + IN struct _LEGACY_BOOT_INTERFACE *This, + IN BBS_TYPE *TableType, + OUT UINTN *DeviceCount, + OUT UINTN *MaxCount + ); + +// +// == PnP Function 0x62 +// +typedef +EFI_STATUS +(EFIAPI *GET_PRIORITY_AND_TABLE) ( + IN struct _LEGACY_BOOT_INTERFACE *This, + IN BBS_TYPE *TableType, + IN OUT UINTN *PrioritySize, // MaxCount * sizeof(UINT8) + OUT UINTN *Priority, + IN OUT UINTN *TableSize, // MaxCount * sizeof(BBS_TABLE_ENTRY) + OUT BBS_TABLE_ENTRY *TableEntrySize + ); + +// +// == PnP Function 0x63 +// +typedef +EFI_STATUS +(EFIAPI *SET_PRIORITY) ( + IN struct _LEGACY_BOOT_INTERFACE *This, + IN BBS_TYPE *TableType, + IN OUT UINTN *PrioritySize, + OUT UINTN *Priority + ); + +typedef struct _LEGACY_BOOT_INTERFACE { + LEGACY_BOOT_CALL BootIt; + + // + // New functions to allow BBS booting to be configured from EFI + // + UINTN BbsVersion; // Currently 0x0101 + GET_DEVICE_COUNT GetDeviceCount; + GET_PRIORITY_AND_TABLE GetPriorityAndTable; + SET_PRIORITY SetPriority; +} LEGACY_BOOT_INTERFACE; + +EFI_STATUS +PlInitializeLegacyBoot ( + VOID + ); + +#endif diff --git a/efi64/include/efi/protocol/piflash64.h b/efi64/include/efi/protocol/piflash64.h new file mode 100644 index 00000000..d521dfcc --- /dev/null +++ b/efi64/include/efi/protocol/piflash64.h @@ -0,0 +1,121 @@ +#ifndef _PIFLASH64_H +#define _PIFLASH64_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + PIflash64.h + +Abstract: + + Iflash64.efi protocol to abstract iflash from + the system. + +Revision History + +--*/ + +// +// Guid that identifies the IFLASH protocol +// +#define IFLASH64_PROTOCOL_PROTOCOL \ + { 0x65cba110, 0x74ab, 0x11d3, 0xbb, 0x89, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81 }; + +// +// Unlock FLASH from StartAddress to EndAddress and return a LockKey +// +typedef +EFI_STATUS +(EFIAPI *UNLOCK_FLASH_API)( + IN struct _IFLASH64_PROTOCOL_INTERFACE *This + ); + +// +// Lock the flash represented by the LockKey +// +typedef +EFI_STATUS +(EFIAPI *LOCK_FLASH_API)( + IN struct _IFLASH64_PROTOCOL_INTERFACE *This + ); + +// +// Status callback for a utility like IFLASH64 +// +// Token would map to a list like Ted proposed. The utility has no idea what +// happens on the other side. +// ErrorStatus - Level of Error or success. Independent of Token. If you +// don't know the token you will at least know pass or fail. +// String - Optional extra information about the error. Could be used for +// debug or future expansion +// +// Attributes - Options screen attributes for String. Could allow the string to be different colors. +// +typedef +EFI_STATUS +(EFIAPI *UTILITY_PROGRESS_API)( + IN struct _IFLASH64_PROTOCOL_INTERFACE *This, + IN UINTN Token, + IN EFI_STATUS ErrorStatus, + IN CHAR16 *String, OPTIONAL + IN UINTN *Attributes OPTIONAL + ); + +// +// Token Values +// +// IFlash64 Token Codes +#define IFLASH_TOKEN_IFLASHSTART 0xB0 // IFlash64 has started +#define IFLASH_TOKEN_READINGFILE 0xB1 // Reading File +#define IFLASH_TOKEN_INITVPP 0xB2 // Initializing Vpp +#define IFLASH_TOKEN_DISABLEVPP 0x10 // Disable Vpp +#define IFLASH_TOKEN_FLASHUNLOCK 0xB3 // Unlocking FLASH Devices +#define IFLASH_TOKEN_FLASHERASE 0xB4 // Erasing FLASH Devices +#define IFLASH_TOKEN_FLASHPROGRAM 0xB5 // Programming FLASH +#define IFLASH_TOKEN_FLASHVERIFY 0xB6 // Verifying FLASH +#define IFLASH_TOKEN_UPDATESUCCES 0xB7 // FLASH Updage Success! + +#define IFLASH_TOKEN_PROGRESS_READINGFILE 0x11 // % Reading File +#define IFLASH_TOKEN_PROGRESS_FLASHUNLOCK 0x13 // % Unlocking FLASH Devices +#define IFLASH_TOKEN_PROGRESS_FLASHERASE 0x14 // % Erasing FLASH Devices +#define IFLASH_TOKEN_PROGRESS_FLASHPROGRAM 0x15 // % Programming FLASH +#define IFLASH_TOKEN_PROGRESS_FLASHVERIFY 0x16 // % Verifying FLASH + +#define IFLASH_TOKEN_READINGFILE_ER 0xB8 // File Read Error +#define IFLASH_TOKEN_INITVPP_ER 0xB9 // Initialization of IFB Error +#define IFLASH_TOKEN_FLASHUNLOCK_ER 0xBA // FLASH Unlock Error +#define IFLASH_TOKEN_FLASHERASE_ER 0xBB // FLASH Erase Error +#define IFLASH_TOKEN_FLASHVERIFY_ER 0xBC // FLASH Verify Error +#define IFLASH_TOKEN_FLASHPROG_ER 0xBD // FLASH Program Error + +#define IFLASH_TABLE_END 0x00 + +// +// If this number changes one of the existing API's has changes +// +#define IFLASH_PI_MAJOR_VERSION 0x01 + +// +// This number changes when new APIs or data variables get added to the end +// of the data structure +// +#define IFLASH_PI_MINOR_VERSION 0x01 + +typedef struct _IFLASH64_PROTOCOL_INTERFACE { + UINT32 MajorVersion; + UINT32 MinorVersion; + UNLOCK_FLASH_API UnlockFlash; + LOCK_FLASH_API LockFlash; + UTILITY_PROGRESS_API Progress; + + // + // Future expansion goes here + // + +} IFLASH64_PROTOCOL_INTERFACE; + + +#endif diff --git a/efi64/include/efi/protocol/vgaclass.h b/efi64/include/efi/protocol/vgaclass.h new file mode 100644 index 00000000..d0deb5ce --- /dev/null +++ b/efi64/include/efi/protocol/vgaclass.h @@ -0,0 +1,95 @@ +#ifndef _VGA_CLASS_H +#define _VGA_CLASS_H + +/*++ + +Copyright (c) 1999 Intel Corporation + +Module Name: + + VgaClass.h + +Abstract: + + Vga Mini port binding to Vga Class protocol + + + +Revision History + +--*/ + +// +// VGA Device Structure +// + +// {0E3D6310-6FE4-11d3-BB81-0080C73C8881} +#define VGA_CLASS_DRIVER_PROTOCOL \ + { 0xe3d6310, 0x6fe4, 0x11d3, {0xbb, 0x81, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } + +typedef +EFI_STATUS +(* INIT_VGA_CARD) ( + IN UINTN VgaMode, + IN VOID *Context + ); + +typedef struct { + UINTN MaxColumns; + UINTN MaxRows; +} MAX_CONSOLE_GEOMETRY; + +#define VGA_CON_OUT_DEV_SIGNATURE EFI_SIGNATURE_32('c','v','g','a') +typedef struct { + UINTN Signature; + + EFI_HANDLE Handle; + SIMPLE_TEXT_OUTPUT_INTERFACE ConOut; + SIMPLE_TEXT_OUTPUT_MODE ConOutMode; + EFI_DEVICE_PATH *DevicePath; + + UINT8 *Buffer; + EFI_DEVICE_IO_INTERFACE *DeviceIo; + + // + // Video Card Context + // + INIT_VGA_CARD InitVgaCard; + VOID *VgaCardContext; + MAX_CONSOLE_GEOMETRY *Geometry; + // + // Video buffer normally 0xb8000 + // + UINT64 VideoBuffer; + + // + // Clear Screen & Default Attribute + // + UINT32 Attribute; + + // + // -1 means search for active VGA device + // + EFI_PCI_ADDRESS_UNION Pci; +} VGA_CON_OUT_DEV; + +#define VGA_CON_OUT_DEV_FROM_THIS(a) CR(a, VGA_CON_OUT_DEV, ConOut, VGA_CON_OUT_DEV_SIGNATURE) + +// +// Vga Class Driver Protocol. +// GUID defined in EFI Lib +// + +typedef +EFI_STATUS +(EFIAPI *INSTALL_VGA_DRIVER) ( + IN VGA_CON_OUT_DEV *ConOutDev + ); + +typedef struct { + UINT32 Version; + INSTALL_VGA_DRIVER InstallGenericVgaDriver; +} INSTALL_VGA_DRIVER_INTERFACE; + +#endif + diff --git a/efi64/include/efi/romload.h b/efi64/include/efi/romload.h new file mode 100644 index 00000000..05060112 --- /dev/null +++ b/efi64/include/efi/romload.h @@ -0,0 +1,41 @@ +#ifndef _EFI_ROMLOAD_H +#define _EFI_ROMLOAD_H + +#define ROM_SIGNATURE 0xaa55 +#define PCIDS_SIGNATURE "PCIR" +#pragma pack(push) +#pragma pack(1) +typedef struct +{ + UINT8 Pcids_Sig[4]; + UINT16 VendId; + UINT16 DevId; + UINT16 Vpd_Off; + UINT16 Size; + UINT8 Rev; + UINT8 Class_Code[3]; + UINT16 Image_Len; + UINT16 Rev_Lvl; + UINT8 Code_Type; + UINT8 Indi; + UINT16 Rsvd; +}PciDataStructure; +typedef struct +{ + UINT16 Size; + UINT32 Header_Sig; + UINT16 SubSystem; + UINT16 MachineType; + UINT8 Resvd[10]; + UINT16 EfiOffset; +}ArchData; +typedef struct +{ + UINT16 Rom_Sig; + ArchData Arch_Data; + UINT16 Pcids_Off; + UINT8 resvd[38]; +}RomHeader; +#pragma pack(pop) + +#endif diff --git a/efi64/include/efi/x86_64/efibind.h b/efi64/include/efi/x86_64/efibind.h new file mode 100644 index 00000000..2133798c --- /dev/null +++ b/efi64/include/efi/x86_64/efibind.h @@ -0,0 +1,380 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efefind.h + +Abstract: + + EFI to compile bindings + + + + +Revision History + +--*/ +#ifndef X86_64_EFI_BIND +#define X86_64_EFI_BIND +#ifndef __GNUC__ +#pragma pack() +#endif + +#if defined(GNU_EFI_USE_MS_ABI) + #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7)) + #define HAVE_USE_MS_ABI 1 + #else + #error Compiler is too old for GNU_EFI_USE_MS_ABI + #endif +#endif + +// +// Basic int types of various widths +// + +#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ) + + // No ANSI C 1999/2000 stdint.h integer width declarations + + #if defined(_MSC_EXTENSIONS) + + // Use Microsoft C compiler integer width declarations + + typedef unsigned __int64 uint64_t; + typedef __int64 int64_t; + typedef unsigned __int32 uint32_t; + typedef __int32 int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef char int8_t; + #elif defined(__GNUC__) + typedef int __attribute__((__mode__(__DI__))) int64_t; + typedef unsigned int __attribute__((__mode__(__DI__))) uint64_t; + typedef unsigned int uint32_t; + typedef int int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef signed char int8_t; + #elif defined(UNIX_LP64) + + /* Use LP64 programming model from C_FLAGS for integer width declarations */ + + typedef unsigned long uint64_t; + typedef long int64_t; + typedef unsigned int uint32_t; + typedef int int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef char int8_t; + #else + + /* Assume P64 programming model from C_FLAGS for integer width declarations */ + + typedef unsigned long long uint64_t __attribute__((aligned (8))); + typedef long long int64_t __attribute__((aligned (8))); + typedef unsigned int uint32_t; + typedef int int32_t; + typedef unsigned short uint16_t; + typedef short int16_t; + typedef unsigned char uint8_t; + typedef char int8_t; + #endif +#elif defined(__GNUC__) + #include +#endif + +// +// Basic EFI types of various widths +// + +#ifndef __WCHAR_TYPE__ +# define __WCHAR_TYPE__ short +#endif + +typedef uint64_t UINT64; +typedef int64_t INT64; + +#ifndef _BASETSD_H_ + typedef uint32_t UINT32; + typedef int32_t INT32; +#endif + +typedef uint16_t UINT16; +typedef int16_t INT16; +typedef uint8_t UINT8; +typedef int8_t INT8; +typedef __WCHAR_TYPE__ WCHAR; + +#undef VOID +#define VOID void + + +typedef int64_t INTN; +typedef uint64_t UINTN; + +#ifdef EFI_NT_EMULATOR + #define POST_CODE(_Data) +#else + #ifdef EFI_DEBUG +#define POST_CODE(_Data) __asm mov eax,(_Data) __asm out 0x80,al + #else + #define POST_CODE(_Data) + #endif +#endif + +#define EFIERR(a) (0x8000000000000000 | a) +#define EFI_ERROR_MASK 0x8000000000000000 +#define EFIERR_OEM(a) (0xc000000000000000 | a) + + +#define BAD_POINTER 0xFBFBFBFBFBFBFBFB +#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF + +#ifdef EFI_NT_EMULATOR + #define BREAKPOINT() __asm { int 3 } +#else + #define BREAKPOINT() while (TRUE); // Make it hang on Bios[Dbg]32 +#endif + +// +// Pointers must be aligned to these address to function +// + +#define MIN_ALIGNMENT_SIZE 4 + +#define ALIGN_VARIABLE(Value ,Adjustment) \ + (UINTN)Adjustment = 0; \ + if((UINTN)Value % MIN_ALIGNMENT_SIZE) \ + (UINTN)Adjustment = MIN_ALIGNMENT_SIZE - ((UINTN)Value % MIN_ALIGNMENT_SIZE); \ + Value = (UINTN)Value + (UINTN)Adjustment + + +// +// Define macros to build data structure signatures from characters. +// + +#define EFI_SIGNATURE_16(A,B) ((A) | (B<<8)) +#define EFI_SIGNATURE_32(A,B,C,D) (EFI_SIGNATURE_16(A,B) | (EFI_SIGNATURE_16(C,D) << 16)) +#define EFI_SIGNATURE_64(A,B,C,D,E,F,G,H) (EFI_SIGNATURE_32(A,B,C,D) | ((UINT64)(EFI_SIGNATURE_32(E,F,G,H)) << 32)) +// +// To export & import functions in the EFI emulator environment +// + +#ifdef EFI_NT_EMULATOR + #define EXPORTAPI __declspec( dllexport ) +#else + #define EXPORTAPI +#endif + + +// +// EFIAPI - prototype calling convention for EFI function pointers +// BOOTSERVICE - prototype for implementation of a boot service interface +// RUNTIMESERVICE - prototype for implementation of a runtime service interface +// RUNTIMEFUNCTION - prototype for implementation of a runtime function that is not a service +// RUNTIME_CODE - pragma macro for declaring runtime code +// + +#ifndef EFIAPI // Forces EFI calling conventions reguardless of compiler options + #ifdef _MSC_EXTENSIONS + #define EFIAPI __cdecl // Force C calling convention for Microsoft C compiler + #elif defined(HAVE_USE_MS_ABI) + // Force amd64/ms calling conventions. + #define EFIAPI __attribute__((ms_abi)) + #else + #define EFIAPI // Substitute expresion to force C calling convention + #endif +#endif + +#define BOOTSERVICE +//#define RUNTIMESERVICE(proto,a) alloc_text("rtcode",a); proto a +//#define RUNTIMEFUNCTION(proto,a) alloc_text("rtcode",a); proto a +#define RUNTIMESERVICE +#define RUNTIMEFUNCTION + + +#define RUNTIME_CODE(a) alloc_text("rtcode", a) +#define BEGIN_RUNTIME_DATA() data_seg("rtdata") +#define END_RUNTIME_DATA() data_seg("") + +#define VOLATILE volatile + +#define MEMORY_FENCE() + +#ifdef EFI_NT_EMULATOR + +// +// To help ensure proper coding of integrated drivers, they are +// compiled as DLLs. In NT they require a dll init entry pointer. +// The macro puts a stub entry point into the DLL so it will load. +// + +#define EFI_DRIVER_ENTRY_POINT(InitFunction) \ + UINTN \ + __stdcall \ + _DllMainCRTStartup ( \ + UINTN Inst, \ + UINTN reason_for_call, \ + VOID *rserved \ + ) \ + { \ + return 1; \ + } \ + \ + int \ + EXPORTAPI \ + __cdecl \ + InitializeDriver ( \ + void *ImageHandle, \ + void *SystemTable \ + ) \ + { \ + return InitFunction(ImageHandle, SystemTable); \ + } + + + #define LOAD_INTERNAL_DRIVER(_if, type, name, entry) \ + (_if)->LoadInternal(type, name, NULL) + +#else // EFI_NT_EMULATOR + +// +// When build similiar to FW, then link everything together as +// one big module. +// + + #define EFI_DRIVER_ENTRY_POINT(InitFunction) \ + UINTN \ + InitializeDriver ( \ + VOID *ImageHandle, \ + VOID *SystemTable \ + ) \ + { \ + return InitFunction(ImageHandle, \ + SystemTable); \ + } \ + \ + EFI_STATUS efi_main( \ + EFI_HANDLE image, \ + EFI_SYSTEM_TABLE *systab \ + ) __attribute__((weak, \ + alias ("InitializeDriver"))); + + #define LOAD_INTERNAL_DRIVER(_if, type, name, entry) \ + (_if)->LoadInternal(type, name, entry) + +#endif // EFI_FW_NT + +// +// Some compilers don't support the forward reference construct: +// typedef struct XXXXX +// +// The following macro provide a workaround for such cases. +// +#ifdef NO_INTERFACE_DECL +#define INTERFACE_DECL(x) +#else +#ifdef __GNUC__ +#define INTERFACE_DECL(x) struct x +#else +#define INTERFACE_DECL(x) typedef struct x +#endif +#endif + +/* for x86_64, EFI_FUNCTION_WRAPPER must be defined */ +#if defined(HAVE_USE_MS_ABI) +#define uefi_call_wrapper(func, va_num, ...) func(__VA_ARGS__) +#else +/* + Credits for macro-magic: + https://groups.google.com/forum/?fromgroups#!topic/comp.std.c/d-6Mj5Lko_s + http://efesx.com/2010/08/31/overloading-macros/ +*/ +#define __VA_NARG__(...) \ + __VA_NARG_(_0, ## __VA_ARGS__, __RSEQ_N()) +#define __VA_NARG_(...) \ + __VA_ARG_N(__VA_ARGS__) +#define __VA_ARG_N( \ + _0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,N,...) N +#define __RSEQ_N() \ + 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 + +#define __VA_ARG_NSUFFIX__(prefix,...) \ + __VA_ARG_NSUFFIX_N(prefix, __VA_NARG__(__VA_ARGS__)) +#define __VA_ARG_NSUFFIX_N(prefix,nargs) \ + __VA_ARG_NSUFFIX_N_(prefix, nargs) +#define __VA_ARG_NSUFFIX_N_(prefix,nargs) \ + prefix ## nargs + +/* Prototypes of EFI cdecl -> stdcall trampolines */ +UINT64 efi_call0(void *func); +UINT64 efi_call1(void *func, UINT64 arg1); +UINT64 efi_call2(void *func, UINT64 arg1, UINT64 arg2); +UINT64 efi_call3(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3); +UINT64 efi_call4(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4); +UINT64 efi_call5(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4, UINT64 arg5); +UINT64 efi_call6(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4, UINT64 arg5, UINT64 arg6); +UINT64 efi_call7(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4, UINT64 arg5, UINT64 arg6, UINT64 arg7); +UINT64 efi_call8(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4, UINT64 arg5, UINT64 arg6, UINT64 arg7, + UINT64 arg8); +UINT64 efi_call9(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4, UINT64 arg5, UINT64 arg6, UINT64 arg7, + UINT64 arg8, UINT64 arg9); +UINT64 efi_call10(void *func, UINT64 arg1, UINT64 arg2, UINT64 arg3, + UINT64 arg4, UINT64 arg5, UINT64 arg6, UINT64 arg7, + UINT64 arg8, UINT64 arg9, UINT64 arg10); + +/* Front-ends to efi_callX to avoid compiler warnings */ +#define _cast64_efi_call0(f) \ + efi_call0(f) +#define _cast64_efi_call1(f,a1) \ + efi_call1(f, (UINT64)(a1)) +#define _cast64_efi_call2(f,a1,a2) \ + efi_call2(f, (UINT64)(a1), (UINT64)(a2)) +#define _cast64_efi_call3(f,a1,a2,a3) \ + efi_call3(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3)) +#define _cast64_efi_call4(f,a1,a2,a3,a4) \ + efi_call4(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4)) +#define _cast64_efi_call5(f,a1,a2,a3,a4,a5) \ + efi_call5(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4), \ + (UINT64)(a5)) +#define _cast64_efi_call6(f,a1,a2,a3,a4,a5,a6) \ + efi_call6(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4), \ + (UINT64)(a5), (UINT64)(a6)) +#define _cast64_efi_call7(f,a1,a2,a3,a4,a5,a6,a7) \ + efi_call7(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4), \ + (UINT64)(a5), (UINT64)(a6), (UINT64)(a7)) +#define _cast64_efi_call8(f,a1,a2,a3,a4,a5,a6,a7,a8) \ + efi_call8(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4), \ + (UINT64)(a5), (UINT64)(a6), (UINT64)(a7), (UINT64)(a8)) +#define _cast64_efi_call9(f,a1,a2,a3,a4,a5,a6,a7,a8,a9) \ + efi_call9(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4), \ + (UINT64)(a5), (UINT64)(a6), (UINT64)(a7), (UINT64)(a8), \ + (UINT64)(a9)) +#define _cast64_efi_call10(f,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) \ + efi_call10(f, (UINT64)(a1), (UINT64)(a2), (UINT64)(a3), (UINT64)(a4), \ + (UINT64)(a5), (UINT64)(a6), (UINT64)(a7), (UINT64)(a8), \ + (UINT64)(a9), (UINT64)(a10)) + +/* main wrapper (va_num ignored) */ +#define uefi_call_wrapper(func,va_num,...) \ + __VA_ARG_NSUFFIX__(_cast64_efi_call, __VA_ARGS__) (func , ##__VA_ARGS__) + +#endif +#define EFI_FUNCTION __attribute__((ms_abi)) + +#ifdef _MSC_EXTENSIONS +#pragma warning ( disable : 4731 ) // Suppress warnings about modification of EBP +#endif + +#endif diff --git a/efi64/include/efi/x86_64/efilibplat.h b/efi64/include/efi/x86_64/efilibplat.h new file mode 100644 index 00000000..3844578d --- /dev/null +++ b/efi64/include/efi/x86_64/efilibplat.h @@ -0,0 +1,26 @@ +/*++ + +Copyright (c) 1998 Intel Corporation + +Module Name: + + efilibplat.h + +Abstract: + + EFI to compile bindings + + + + +Revision History + +--*/ + +VOID +InitializeLibPlatform ( + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable + ); + + diff --git a/efi64/include/efi/x86_64/pe.h b/efi64/include/efi/x86_64/pe.h new file mode 100644 index 00000000..979b9360 --- /dev/null +++ b/efi64/include/efi/x86_64/pe.h @@ -0,0 +1,595 @@ +/* + PE32+ header file + */ +#ifndef _PE_H +#define _PE_H + +#define IMAGE_DOS_SIGNATURE 0x5A4D // MZ +#define IMAGE_OS2_SIGNATURE 0x454E // NE +#define IMAGE_OS2_SIGNATURE_LE 0x454C // LE +#define IMAGE_NT_SIGNATURE 0x00004550 // PE00 +#define IMAGE_EDOS_SIGNATURE 0x44454550 // PEED + + +typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header + UINT16 e_magic; // Magic number + UINT16 e_cblp; // Bytes on last page of file + UINT16 e_cp; // Pages in file + UINT16 e_crlc; // Relocations + UINT16 e_cparhdr; // Size of header in paragraphs + UINT16 e_minalloc; // Minimum extra paragraphs needed + UINT16 e_maxalloc; // Maximum extra paragraphs needed + UINT16 e_ss; // Initial (relative) SS value + UINT16 e_sp; // Initial SP value + UINT16 e_csum; // Checksum + UINT16 e_ip; // Initial IP value + UINT16 e_cs; // Initial (relative) CS value + UINT16 e_lfarlc; // File address of relocation table + UINT16 e_ovno; // Overlay number + UINT16 e_res[4]; // Reserved words + UINT16 e_oemid; // OEM identifier (for e_oeminfo) + UINT16 e_oeminfo; // OEM information; e_oemid specific + UINT16 e_res2[10]; // Reserved words + UINT32 e_lfanew; // File address of new exe header + } IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER; + +typedef struct _IMAGE_OS2_HEADER { // OS/2 .EXE header + UINT16 ne_magic; // Magic number + UINT8 ne_ver; // Version number + UINT8 ne_rev; // Revision number + UINT16 ne_enttab; // Offset of Entry Table + UINT16 ne_cbenttab; // Number of bytes in Entry Table + UINT32 ne_crc; // Checksum of whole file + UINT16 ne_flags; // Flag UINT16 + UINT16 ne_autodata; // Automatic data segment number + UINT16 ne_heap; // Initial heap allocation + UINT16 ne_stack; // Initial stack allocation + UINT32 ne_csip; // Initial CS:IP setting + UINT32 ne_sssp; // Initial SS:SP setting + UINT16 ne_cseg; // Count of file segments + UINT16 ne_cmod; // Entries in Module Reference Table + UINT16 ne_cbnrestab; // Size of non-resident name table + UINT16 ne_segtab; // Offset of Segment Table + UINT16 ne_rsrctab; // Offset of Resource Table + UINT16 ne_restab; // Offset of resident name table + UINT16 ne_modtab; // Offset of Module Reference Table + UINT16 ne_imptab; // Offset of Imported Names Table + UINT32 ne_nrestab; // Offset of Non-resident Names Table + UINT16 ne_cmovent; // Count of movable entries + UINT16 ne_align; // Segment alignment shift count + UINT16 ne_cres; // Count of resource segments + UINT8 ne_exetyp; // Target Operating system + UINT8 ne_flagsothers; // Other .EXE flags + UINT16 ne_pretthunks; // offset to return thunks + UINT16 ne_psegrefbytes; // offset to segment ref. bytes + UINT16 ne_swaparea; // Minimum code swap area size + UINT16 ne_expver; // Expected Windows version number + } IMAGE_OS2_HEADER, *PIMAGE_OS2_HEADER; + +// +// File header format. +// + +typedef struct _IMAGE_FILE_HEADER { + UINT16 Machine; + UINT16 NumberOfSections; + UINT32 TimeDateStamp; + UINT32 PointerToSymbolTable; + UINT32 NumberOfSymbols; + UINT16 SizeOfOptionalHeader; + UINT16 Characteristics; +} IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER; + +#define IMAGE_SIZEOF_FILE_HEADER 20 + +#define IMAGE_FILE_RELOCS_STRIPPED 0x0001 // Relocation info stripped from file. +#define IMAGE_FILE_EXECUTABLE_IMAGE 0x0002 // File is executable (i.e. no unresolved externel references). +#define IMAGE_FILE_LINE_NUMS_STRIPPED 0x0004 // Line nunbers stripped from file. +#define IMAGE_FILE_LOCAL_SYMS_STRIPPED 0x0008 // Local symbols stripped from file. +#define IMAGE_FILE_BYTES_REVERSED_LO 0x0080 // Bytes of machine word are reversed. +#define IMAGE_FILE_32BIT_MACHINE 0x0100 // 32 bit word machine. +#define IMAGE_FILE_DEBUG_STRIPPED 0x0200 // Debugging info stripped from file in .DBG file +#define IMAGE_FILE_SYSTEM 0x1000 // System File. +#define IMAGE_FILE_DLL 0x2000 // File is a DLL. +#define IMAGE_FILE_BYTES_REVERSED_HI 0x8000 // Bytes of machine word are reversed. + +#define IMAGE_FILE_MACHINE_UNKNOWN 0 +#define IMAGE_FILE_MACHINE_I386 0x14c // Intel 386. +#define IMAGE_FILE_MACHINE_R3000 0x162 // MIPS little-endian, 0540 big-endian +#define IMAGE_FILE_MACHINE_R4000 0x166 // MIPS little-endian +#define IMAGE_FILE_MACHINE_ALPHA 0x184 // Alpha_AXP +#define IMAGE_FILE_MACHINE_ARMTHUMB_MIXED 0x1c2 // Arm/Thumb +#define IMAGE_FILE_MACHINE_POWERPC 0x1F0 // IBM PowerPC Little-Endian +#define IMAGE_FILE_MACHINE_IA64 0x200 // IA-64 +#define IMAGE_FILE_MACHINE_TAHOE 0x7cc // Intel EM machine +#define IMAGE_FILE_MACHINE_EBC 0xebc // EFI Byte Code +#define IMAGE_FILE_MACHINE_X64 0x8664 // x86_64 +// +// Directory format. +// + +typedef struct _IMAGE_DATA_DIRECTORY { + UINT32 VirtualAddress; + UINT32 Size; +} IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY; + +#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16 + +// +// Optional header format. +// + +typedef struct _IMAGE_OPTIONAL_HEADER { + // + // Standard fields. + // + + UINT16 Magic; + UINT8 MajorLinkerVersion; + UINT8 MinorLinkerVersion; + UINT32 SizeOfCode; + UINT32 SizeOfInitializedData; + UINT32 SizeOfUninitializedData; + UINT32 AddressOfEntryPoint; + UINT32 BaseOfCode; + UINT32 BaseOfData; + + // + // NT additional fields. + // + + UINT32 ImageBase; + UINT32 SectionAlignment; + UINT32 FileAlignment; + UINT16 MajorOperatingSystemVersion; + UINT16 MinorOperatingSystemVersion; + UINT16 MajorImageVersion; + UINT16 MinorImageVersion; + UINT16 MajorSubsystemVersion; + UINT16 MinorSubsystemVersion; + UINT32 Reserved1; + UINT32 SizeOfImage; + UINT32 SizeOfHeaders; + UINT32 CheckSum; + UINT16 Subsystem; + UINT16 DllCharacteristics; + UINT32 SizeOfStackReserve; + UINT32 SizeOfStackCommit; + UINT32 SizeOfHeapReserve; + UINT32 SizeOfHeapCommit; + UINT32 LoaderFlags; + UINT32 NumberOfRvaAndSizes; + IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; +} IMAGE_OPTIONAL_HEADER, *PIMAGE_OPTIONAL_HEADER; + +typedef struct _IMAGE_ROM_OPTIONAL_HEADER { + UINT16 Magic; + UINT8 MajorLinkerVersion; + UINT8 MinorLinkerVersion; + UINT32 SizeOfCode; + UINT32 SizeOfInitializedData; + UINT32 SizeOfUninitializedData; + UINT32 AddressOfEntryPoint; + UINT32 BaseOfCode; + UINT32 BaseOfData; + UINT32 BaseOfBss; + UINT32 GprMask; + UINT32 CprMask[4]; + UINT32 GpValue; +} IMAGE_ROM_OPTIONAL_HEADER, *PIMAGE_ROM_OPTIONAL_HEADER; + +#define IMAGE_SIZEOF_ROM_OPTIONAL_HEADER 56 +#define IMAGE_SIZEOF_STD_OPTIONAL_HEADER 28 +#define IMAGE_SIZEOF_NT_OPTIONAL_HEADER 224 + +#define IMAGE_NT_OPTIONAL_HDR_MAGIC 0x10b +#define IMAGE_ROM_OPTIONAL_HDR_MAGIC 0x107 + +typedef struct _IMAGE_NT_HEADERS { + UINT32 Signature; + IMAGE_FILE_HEADER FileHeader; + IMAGE_OPTIONAL_HEADER OptionalHeader; +} IMAGE_NT_HEADERS, *PIMAGE_NT_HEADERS; + +typedef struct _IMAGE_ROM_HEADERS { + IMAGE_FILE_HEADER FileHeader; + IMAGE_ROM_OPTIONAL_HEADER OptionalHeader; +} IMAGE_ROM_HEADERS, *PIMAGE_ROM_HEADERS; + +#define IMAGE_FIRST_SECTION( ntheader ) ((PIMAGE_SECTION_HEADER) \ + ((UINT32)ntheader + \ + FIELD_OFFSET( IMAGE_NT_HEADERS, OptionalHeader ) + \ + ((PIMAGE_NT_HEADERS)(ntheader))->FileHeader.SizeOfOptionalHeader \ + )) + + +// Subsystem Values + +#define IMAGE_SUBSYSTEM_UNKNOWN 0 // Unknown subsystem. +#define IMAGE_SUBSYSTEM_NATIVE 1 // Image doesn't require a subsystem. +#define IMAGE_SUBSYSTEM_WINDOWS_GUI 2 // Image runs in the Windows GUI subsystem. +#define IMAGE_SUBSYSTEM_WINDOWS_CUI 3 // Image runs in the Windows character subsystem. +#define IMAGE_SUBSYSTEM_OS2_CUI 5 // image runs in the OS/2 character subsystem. +#define IMAGE_SUBSYSTEM_POSIX_CUI 7 // image run in the Posix character subsystem. + + +// Directory Entries + +#define IMAGE_DIRECTORY_ENTRY_EXPORT 0 // Export Directory +#define IMAGE_DIRECTORY_ENTRY_IMPORT 1 // Import Directory +#define IMAGE_DIRECTORY_ENTRY_RESOURCE 2 // Resource Directory +#define IMAGE_DIRECTORY_ENTRY_EXCEPTION 3 // Exception Directory +#define IMAGE_DIRECTORY_ENTRY_SECURITY 4 // Security Directory +#define IMAGE_DIRECTORY_ENTRY_BASERELOC 5 // Base Relocation Table +#define IMAGE_DIRECTORY_ENTRY_DEBUG 6 // Debug Directory +#define IMAGE_DIRECTORY_ENTRY_COPYRIGHT 7 // Description String +#define IMAGE_DIRECTORY_ENTRY_GLOBALPTR 8 // Machine Value (MIPS GP) +#define IMAGE_DIRECTORY_ENTRY_TLS 9 // TLS Directory +#define IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG 10 // Load Configuration Directory + +// +// Section header format. +// + +#define IMAGE_SIZEOF_SHORT_NAME 8 + +typedef struct _IMAGE_SECTION_HEADER { + UINT8 Name[IMAGE_SIZEOF_SHORT_NAME]; + union { + UINT32 PhysicalAddress; + UINT32 VirtualSize; + } Misc; + UINT32 VirtualAddress; + UINT32 SizeOfRawData; + UINT32 PointerToRawData; + UINT32 PointerToRelocations; + UINT32 PointerToLinenumbers; + UINT16 NumberOfRelocations; + UINT16 NumberOfLinenumbers; + UINT32 Characteristics; +} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER; + +#define IMAGE_SIZEOF_SECTION_HEADER 40 + +#define IMAGE_SCN_TYPE_NO_PAD 0x00000008 // Reserved. + +#define IMAGE_SCN_CNT_CODE 0x00000020 // Section contains code. +#define IMAGE_SCN_CNT_INITIALIZED_DATA 0x00000040 // Section contains initialized data. +#define IMAGE_SCN_CNT_UNINITIALIZED_DATA 0x00000080 // Section contains uninitialized data. + +#define IMAGE_SCN_LNK_OTHER 0x00000100 // Reserved. +#define IMAGE_SCN_LNK_INFO 0x00000200 // Section contains comments or some other type of information. +#define IMAGE_SCN_LNK_REMOVE 0x00000800 // Section contents will not become part of image. +#define IMAGE_SCN_LNK_COMDAT 0x00001000 // Section contents comdat. + +#define IMAGE_SCN_ALIGN_1BYTES 0x00100000 // +#define IMAGE_SCN_ALIGN_2BYTES 0x00200000 // +#define IMAGE_SCN_ALIGN_4BYTES 0x00300000 // +#define IMAGE_SCN_ALIGN_8BYTES 0x00400000 // +#define IMAGE_SCN_ALIGN_16BYTES 0x00500000 // Default alignment if no others are specified. +#define IMAGE_SCN_ALIGN_32BYTES 0x00600000 // +#define IMAGE_SCN_ALIGN_64BYTES 0x00700000 // + +#define IMAGE_SCN_MEM_DISCARDABLE 0x02000000 // Section can be discarded. +#define IMAGE_SCN_MEM_NOT_CACHED 0x04000000 // Section is not cachable. +#define IMAGE_SCN_MEM_NOT_PAGED 0x08000000 // Section is not pageable. +#define IMAGE_SCN_MEM_SHARED 0x10000000 // Section is shareable. +#define IMAGE_SCN_MEM_EXECUTE 0x20000000 // Section is executable. +#define IMAGE_SCN_MEM_READ 0x40000000 // Section is readable. +#define IMAGE_SCN_MEM_WRITE 0x80000000 // Section is writeable. + +// +// Symbol format. +// + + +#define IMAGE_SIZEOF_SYMBOL 18 + +// +// Section values. +// +// Symbols have a section number of the section in which they are +// defined. Otherwise, section numbers have the following meanings: +// + +#define IMAGE_SYM_UNDEFINED (UINT16)0 // Symbol is undefined or is common. +#define IMAGE_SYM_ABSOLUTE (UINT16)-1 // Symbol is an absolute value. +#define IMAGE_SYM_DEBUG (UINT16)-2 // Symbol is a special debug item. + +// +// Type (fundamental) values. +// + +#define IMAGE_SYM_TYPE_NULL 0 // no type. +#define IMAGE_SYM_TYPE_VOID 1 // +#define IMAGE_SYM_TYPE_CHAR 2 // type character. +#define IMAGE_SYM_TYPE_SHORT 3 // type short integer. +#define IMAGE_SYM_TYPE_INT 4 // +#define IMAGE_SYM_TYPE_LONG 5 // +#define IMAGE_SYM_TYPE_FLOAT 6 // +#define IMAGE_SYM_TYPE_DOUBLE 7 // +#define IMAGE_SYM_TYPE_STRUCT 8 // +#define IMAGE_SYM_TYPE_UNION 9 // +#define IMAGE_SYM_TYPE_ENUM 10 // enumeration. +#define IMAGE_SYM_TYPE_MOE 11 // member of enumeration. +#define IMAGE_SYM_TYPE_BYTE 12 // +#define IMAGE_SYM_TYPE_WORD 13 // +#define IMAGE_SYM_TYPE_UINT 14 // +#define IMAGE_SYM_TYPE_DWORD 15 // + +// +// Type (derived) values. +// + +#define IMAGE_SYM_DTYPE_NULL 0 // no derived type. +#define IMAGE_SYM_DTYPE_POINTER 1 // pointer. +#define IMAGE_SYM_DTYPE_FUNCTION 2 // function. +#define IMAGE_SYM_DTYPE_ARRAY 3 // array. + +// +// Storage classes. +// + +#define IMAGE_SYM_CLASS_END_OF_FUNCTION (BYTE )-1 +#define IMAGE_SYM_CLASS_NULL 0 +#define IMAGE_SYM_CLASS_AUTOMATIC 1 +#define IMAGE_SYM_CLASS_EXTERNAL 2 +#define IMAGE_SYM_CLASS_STATIC 3 +#define IMAGE_SYM_CLASS_REGISTER 4 +#define IMAGE_SYM_CLASS_EXTERNAL_DEF 5 +#define IMAGE_SYM_CLASS_LABEL 6 +#define IMAGE_SYM_CLASS_UNDEFINED_LABEL 7 +#define IMAGE_SYM_CLASS_MEMBER_OF_STRUCT 8 +#define IMAGE_SYM_CLASS_ARGUMENT 9 +#define IMAGE_SYM_CLASS_STRUCT_TAG 10 +#define IMAGE_SYM_CLASS_MEMBER_OF_UNION 11 +#define IMAGE_SYM_CLASS_UNION_TAG 12 +#define IMAGE_SYM_CLASS_TYPE_DEFINITION 13 +#define IMAGE_SYM_CLASS_UNDEFINED_STATIC 14 +#define IMAGE_SYM_CLASS_ENUM_TAG 15 +#define IMAGE_SYM_CLASS_MEMBER_OF_ENUM 16 +#define IMAGE_SYM_CLASS_REGISTER_PARAM 17 +#define IMAGE_SYM_CLASS_BIT_FIELD 18 +#define IMAGE_SYM_CLASS_BLOCK 100 +#define IMAGE_SYM_CLASS_FUNCTION 101 +#define IMAGE_SYM_CLASS_END_OF_STRUCT 102 +#define IMAGE_SYM_CLASS_FILE 103 +// new +#define IMAGE_SYM_CLASS_SECTION 104 +#define IMAGE_SYM_CLASS_WEAK_EXTERNAL 105 + +// type packing constants + +#define N_BTMASK 017 +#define N_TMASK 060 +#define N_TMASK1 0300 +#define N_TMASK2 0360 +#define N_BTSHFT 4 +#define N_TSHIFT 2 + +// MACROS + +// +// Communal selection types. +// + +#define IMAGE_COMDAT_SELECT_NODUPLICATES 1 +#define IMAGE_COMDAT_SELECT_ANY 2 +#define IMAGE_COMDAT_SELECT_SAME_SIZE 3 +#define IMAGE_COMDAT_SELECT_EXACT_MATCH 4 +#define IMAGE_COMDAT_SELECT_ASSOCIATIVE 5 + +#define IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY 1 +#define IMAGE_WEAK_EXTERN_SEARCH_LIBRARY 2 +#define IMAGE_WEAK_EXTERN_SEARCH_ALIAS 3 + + +// +// Relocation format. +// + +typedef struct _IMAGE_RELOCATION { + UINT32 VirtualAddress; + UINT32 SymbolTableIndex; + UINT16 Type; +} IMAGE_RELOCATION; + +#define IMAGE_SIZEOF_RELOCATION 10 + +// +// I386 relocation types. +// + +#define IMAGE_REL_I386_ABSOLUTE 0 // Reference is absolute, no relocation is necessary +#define IMAGE_REL_I386_DIR16 01 // Direct 16-bit reference to the symbols virtual address +#define IMAGE_REL_I386_REL16 02 // PC-relative 16-bit reference to the symbols virtual address +#define IMAGE_REL_I386_DIR32 06 // Direct 32-bit reference to the symbols virtual address +#define IMAGE_REL_I386_DIR32NB 07 // Direct 32-bit reference to the symbols virtual address, base not included +#define IMAGE_REL_I386_SEG12 011 // Direct 16-bit reference to the segment-selector bits of a 32-bit virtual address +#define IMAGE_REL_I386_SECTION 012 +#define IMAGE_REL_I386_SECREL 013 +#define IMAGE_REL_I386_REL32 024 // PC-relative 32-bit reference to the symbols virtual address + +// +// MIPS relocation types. +// + +#define IMAGE_REL_MIPS_ABSOLUTE 0 // Reference is absolute, no relocation is necessary +#define IMAGE_REL_MIPS_REFHALF 01 +#define IMAGE_REL_MIPS_REFWORD 02 +#define IMAGE_REL_MIPS_JMPADDR 03 +#define IMAGE_REL_MIPS_REFHI 04 +#define IMAGE_REL_MIPS_REFLO 05 +#define IMAGE_REL_MIPS_GPREL 06 +#define IMAGE_REL_MIPS_LITERAL 07 +#define IMAGE_REL_MIPS_SECTION 012 +#define IMAGE_REL_MIPS_SECREL 013 +#define IMAGE_REL_MIPS_REFWORDNB 042 +#define IMAGE_REL_MIPS_PAIR 045 + +// +// Alpha Relocation types. +// + +#define IMAGE_REL_ALPHA_ABSOLUTE 0x0 +#define IMAGE_REL_ALPHA_REFLONG 0x1 +#define IMAGE_REL_ALPHA_REFQUAD 0x2 +#define IMAGE_REL_ALPHA_GPREL32 0x3 +#define IMAGE_REL_ALPHA_LITERAL 0x4 +#define IMAGE_REL_ALPHA_LITUSE 0x5 +#define IMAGE_REL_ALPHA_GPDISP 0x6 +#define IMAGE_REL_ALPHA_BRADDR 0x7 +#define IMAGE_REL_ALPHA_HINT 0x8 +#define IMAGE_REL_ALPHA_INLINE_REFLONG 0x9 +#define IMAGE_REL_ALPHA_REFHI 0xA +#define IMAGE_REL_ALPHA_REFLO 0xB +#define IMAGE_REL_ALPHA_PAIR 0xC +#define IMAGE_REL_ALPHA_MATCH 0xD +#define IMAGE_REL_ALPHA_SECTION 0xE +#define IMAGE_REL_ALPHA_SECREL 0xF +#define IMAGE_REL_ALPHA_REFLONGNB 0x10 + +// +// IBM PowerPC relocation types. +// + +#define IMAGE_REL_PPC_ABSOLUTE 0x0000 // NOP +#define IMAGE_REL_PPC_ADDR64 0x0001 // 64-bit address +#define IMAGE_REL_PPC_ADDR32 0x0002 // 32-bit address +#define IMAGE_REL_PPC_ADDR24 0x0003 // 26-bit address, shifted left 2 (branch absolute) +#define IMAGE_REL_PPC_ADDR16 0x0004 // 16-bit address +#define IMAGE_REL_PPC_ADDR14 0x0005 // 16-bit address, shifted left 2 (load doubleword) +#define IMAGE_REL_PPC_REL24 0x0006 // 26-bit PC-relative offset, shifted left 2 (branch relative) +#define IMAGE_REL_PPC_REL14 0x0007 // 16-bit PC-relative offset, shifted left 2 (br cond relative) +#define IMAGE_REL_PPC_TOCREL16 0x0008 // 16-bit offset from TOC base +#define IMAGE_REL_PPC_TOCREL14 0x0009 // 16-bit offset from TOC base, shifted left 2 (load doubleword) + +#define IMAGE_REL_PPC_ADDR32NB 0x000A // 32-bit addr w/o image base +#define IMAGE_REL_PPC_SECREL 0x000B // va of containing section (as in an image sectionhdr) +#define IMAGE_REL_PPC_SECTION 0x000C // sectionheader number +#define IMAGE_REL_PPC_IFGLUE 0x000D // substitute TOC restore instruction iff symbol is glue code +#define IMAGE_REL_PPC_IMGLUE 0x000E // symbol is glue code; virtual address is TOC restore instruction + +#define IMAGE_REL_PPC_TYPEMASK 0x00FF // mask to isolate above values in IMAGE_RELOCATION.Type + +// Flag bits in IMAGE_RELOCATION.TYPE + +#define IMAGE_REL_PPC_NEG 0x0100 // subtract reloc value rather than adding it +#define IMAGE_REL_PPC_BRTAKEN 0x0200 // fix branch prediction bit to predict branch taken +#define IMAGE_REL_PPC_BRNTAKEN 0x0400 // fix branch prediction bit to predict branch not taken +#define IMAGE_REL_PPC_TOCDEFN 0x0800 // toc slot defined in file (or, data in toc) + +// +// Based relocation format. +// + +typedef struct _IMAGE_BASE_RELOCATION { + UINT32 VirtualAddress; + UINT32 SizeOfBlock; +// UINT16 TypeOffset[1]; +} IMAGE_BASE_RELOCATION, *PIMAGE_BASE_RELOCATION; + +#define IMAGE_SIZEOF_BASE_RELOCATION 8 + +// +// Based relocation types. +// + +#define IMAGE_REL_BASED_ABSOLUTE 0 +#define IMAGE_REL_BASED_HIGH 1 +#define IMAGE_REL_BASED_LOW 2 +#define IMAGE_REL_BASED_HIGHLOW 3 +#define IMAGE_REL_BASED_HIGHADJ 4 +#define IMAGE_REL_BASED_MIPS_JMPADDR 5 +#define IMAGE_REL_BASED_IA64_IMM64 9 +#define IMAGE_REL_BASED_DIR64 10 + +// +// Line number format. +// + +typedef struct _IMAGE_LINENUMBER { + union { + UINT32 SymbolTableIndex; // Symbol table index of function name if Linenumber is 0. + UINT32 VirtualAddress; // Virtual address of line number. + } Type; + UINT16 Linenumber; // Line number. +} IMAGE_LINENUMBER; + +#define IMAGE_SIZEOF_LINENUMBER 6 + +// +// Archive format. +// + +#define IMAGE_ARCHIVE_START_SIZE 8 +#define IMAGE_ARCHIVE_START "!\n" +#define IMAGE_ARCHIVE_END "`\n" +#define IMAGE_ARCHIVE_PAD "\n" +#define IMAGE_ARCHIVE_LINKER_MEMBER "/ " +#define IMAGE_ARCHIVE_LONGNAMES_MEMBER "// " + +typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER { + UINT8 Name[16]; // File member name - `/' terminated. + UINT8 Date[12]; // File member date - decimal. + UINT8 UserID[6]; // File member user id - decimal. + UINT8 GroupID[6]; // File member group id - decimal. + UINT8 Mode[8]; // File member mode - octal. + UINT8 Size[10]; // File member size - decimal. + UINT8 EndHeader[2]; // String to end header. +} IMAGE_ARCHIVE_MEMBER_HEADER, *PIMAGE_ARCHIVE_MEMBER_HEADER; + +#define IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR 60 + +// +// DLL support. +// + +// +// Export Format +// + +typedef struct _IMAGE_EXPORT_DIRECTORY { + UINT32 Characteristics; + UINT32 TimeDateStamp; + UINT16 MajorVersion; + UINT16 MinorVersion; + UINT32 Name; + UINT32 Base; + UINT32 NumberOfFunctions; + UINT32 NumberOfNames; + UINT32 *AddressOfFunctions; + UINT32 *AddressOfNames; + UINT32 *AddressOfNameOrdinals; +} IMAGE_EXPORT_DIRECTORY, *PIMAGE_EXPORT_DIRECTORY; + +// +// Import Format +// + +typedef struct _IMAGE_IMPORT_BY_NAME { + UINT16 Hint; + UINT8 Name[1]; +} IMAGE_IMPORT_BY_NAME, *PIMAGE_IMPORT_BY_NAME; + +typedef struct _IMAGE_THUNK_DATA { + union { + UINT32 Function; + UINT32 Ordinal; + PIMAGE_IMPORT_BY_NAME AddressOfData; + } u1; +} IMAGE_THUNK_DATA, *PIMAGE_THUNK_DATA; + +#define IMAGE_ORDINAL_FLAG 0x80000000 +#define IMAGE_SNAP_BY_ORDINAL(Ordinal) ((Ordinal & IMAGE_ORDINAL_FLAG) != 0) +#define IMAGE_ORDINAL(Ordinal) (Ordinal & 0xffff) + +typedef struct _IMAGE_IMPORT_DESCRIPTOR { + UINT32 Characteristics; + UINT32 TimeDateStamp; + UINT32 ForwarderChain; + UINT32 Name; + PIMAGE_THUNK_DATA FirstThunk; +} IMAGE_IMPORT_DESCRIPTOR, *PIMAGE_IMPORT_DESCRIPTOR; + +#endif diff --git a/efi64/lib/crt0-efi-x86_64.o b/efi64/lib/crt0-efi-x86_64.o new file mode 100644 index 0000000000000000000000000000000000000000..9a10d08d64e94ab109743407b7d0f74070909c96 GIT binary patch literal 1328 zcwVKG&q~8U5XL91wP{pP@KEWc7ezq=Jt)0YTK|!P3hk{Pj9a^EA<@#T(0cLEbKj?T zeHafuf}q`GLf6UW@K+u>?M?H2h^6qrQON zi|>!YV_oi5zzqZ&3TXQ5fgiJggL~S!YFsu?zzuIZ6CC(`-}PDlDQ;6h&*1v|C(^pY UEro9>d`019g|8|c6t4bfzhjeM*Z=?k literal 0 HcwPel00001 diff --git a/efi64/lib/elf_x86_64_efi.lds b/efi64/lib/elf_x86_64_efi.lds new file mode 100644 index 00000000..c4df0a55 --- /dev/null +++ b/efi64/lib/elf_x86_64_efi.lds @@ -0,0 +1,65 @@ +/* Same as elf_x86_64_fbsd_efi.lds, except for OUTPUT_FORMAT below - KEEP IN SYNC */ +OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") +OUTPUT_ARCH(i386:x86-64) +ENTRY(_start) +SECTIONS +{ + . = 0; + ImageBase = .; + .hash : { *(.hash) } /* this MUST come first! */ + . = ALIGN(4096); + .eh_frame : + { + *(.eh_frame) + } + . = ALIGN(4096); + .text : + { + *(.text) + *(.text.*) + *(.gnu.linkonce.t.*) + } + . = ALIGN(4096); + .reloc : + { + *(.reloc) + } + . = ALIGN(4096); + .data : + { + *(.rodata*) + *(.got.plt) + *(.got) + *(.data*) + *(.sdata) + /* the EFI loader doesn't seem to like a .bss section, so we stick + it all into .data: */ + *(.sbss) + *(.scommon) + *(.dynbss) + *(.bss) + *(COMMON) + *(.rel.local) + } + . = ALIGN(4096); + .dynamic : { *(.dynamic) } + . = ALIGN(4096); + .rela : + { + *(.rela.data*) + *(.rela.got) + *(.rela.stab) + } + . = ALIGN(4096); + .dynsym : { *(.dynsym) } + . = ALIGN(4096); + .dynstr : { *(.dynstr) } + . = ALIGN(4096); + .ignored.reloc : + { + *(.rela.reloc) + *(.eh_frame) + *(.note.GNU-stack) + } + .comment 0 : { *(.comment) } +} diff --git a/efi64/lib/libefi.a b/efi64/lib/libefi.a new file mode 100644 index 0000000000000000000000000000000000000000..21214740f6922dd07ecbf8e8a5cd152c9b47999d GIT binary patch literal 109490 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 q*D^KTKV*EcZf9Bc% literal 0 HcwPel00001 diff --git a/efi64/lib/libgnuefi.a b/efi64/lib/libgnuefi.a new file mode 100644 index 0000000000000000000000000000000000000000..a2576231a29584bc2d85681f0f4003172bf82f88 GIT binary patch literal 2472 zcwWs`Pfrs;6n{&BE@;w1JRq2KIT+hWm)-tZ8)HZ#7A9sP29<*c%TksSr7dZs_Z{P2|H}hs@-%BSSXvNIN z%<#0(4mp}o?!}c@JR%6v8PhrnLM-BVt_%Z!2S0g$!3cTMMSZi7(F`3*y74Nv1)GI@ zmPj}=q$>#}t;EE_blWPj9F56wI!cnF#4s0=6=#)dN}cQDIB>wh3^cVSzO;}@I$i@F zkTr;Eb>H4TX3+a(zuZWXU;Q|=?h8D^-0ta+@dA(DvKN`Zk!O)d<`1;{&5x{yCpgp? z$40*VQ?=$8OZf=Z8orP9g<8W1?$wRE$VuYe0iJyC>{YcE`Qy*)qN8KKL%DviP^-T^ z^#zi!yTkM4A!ME+4~MwKLg>57HL$gMguO_>{Os&~AvnMIJS4=#geVIUNsda26cvI? z`kH_=!{)~5C0xN1-7fiI@0*CJAE$W;J#G2%la(+m~wp#FHuJ}FP_m; z(77jqtpQt(QGE#PJ96S3egs_34r7I`|BT_;{M~XVsL-SisZQDu51s3iyxi7*Lh~PI z_%6rV0piyWzy7${JY8n-xbB4TZW$7OpbO7dgTr^;6sd>NmVD0ZrL7rfpxL!;2vqh# z`}x~Fz1hSs>fwn/dev/null | tail -n1) -LDSCRIPT := $(shell find $(LIBDIR) -name elf_$(EFI_SUBARCH)_efi.lds 2>/dev/null | tail -n1) +CRT0 := $(LIBDIR)/crt0-efi-$(EFI_SUBARCH).o +LDSCRIPT := $(LIBDIR)/elf_$(EFI_SUBARCH)_efi.lds LDFLAGS = -T $(SRC)/$(ARCH)/syslinux.ld -Bsymbolic -pie -nostdlib -znocombreloc \ -L$(LIBDIR) --hash-style=gnu -m elf_$(ARCH) $(CRT0) -E diff --git a/syslinux.spec b/syslinux.spec index 1cdd44b2..6d5f77eb 100644 --- a/syslinux.spec +++ b/syslinux.spec @@ -1,6 +1,6 @@ # -*- rpm -*- -%define RPMVERSION 6.02 -%define VERSION 6.02 +%define RPMVERSION 6.02.1 +%define VERSION 6.03-pre1 Summary: Kernel loader which uses a FAT, ext2/3 or iso9660 filesystem or a PXE network Name: syslinux Version: %{RPMVERSION} diff --git a/version b/version index 8c57858a..42678b77 100644 --- a/version +++ b/version @@ -1 +1 @@ -6.02 2013 +6.03 2013 -- 2.11.4.GIT

    hlRfA~ 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 diff --git a/efi64/com32/lib/libcom32.elf b/efi64/com32/lib/libcom32.elf index 26c1161f6cff3303140149e00880c212797e3753..cd02f40831a2a7a3a4625d7d0174e5da9dff5c9f 100755 GIT binary patch delta 231288 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 n>u>vtG_Y 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