Skip to content

Releases: ProjectMile/Mile.HyperV

Mile.HyperV 1.1.399.0

24 Oct 01:40
Compare
Choose a tag to compare

Microsoft makes the UEFI firmware of Hyper-V Generation 2 Virtual Machines open source (https://github.com/microsoft/mu_msvm) due to OpenVMM. I think this is good news for Hyper-V users. Based on that, I have revised and added some new definitions for this project.

Release Notes

  • Introduce Mile.HyperV.Guest.Interface.h and Mile.HyperV.Guest.Protocols.h for including Hyper-V guest publicized interface and protocols definitions from https://github.com/microsoft/mu_msvm/tree/258361bd0d61320df8984705111d94af20b4d8a4.
    • Microsoft's original comments for interface and protocols.
    • More Hyper-V ARM64 guest definitions.
    • Introduce the definition of HvCallModifySparseGpaPageHostVisibility.
    • More VMBus protocol definitions for Microsoft Hyper-V Virtual Machine Bus device which replaced all definitions dumped from Windows 10 Build 14347's vmbus.sys.
    • More VMBus protocol definitions for Microsoft Hyper-V Video device.
    • More VMBus protocol definitions for Microsoft Hyper-V Virtual Keyboard device which replaced all definitions dumped from Windows 10 Build 14347's hyperkbd.sys.
    • More VMBus protocol definitions for Microsoft Hyper-V SCSI Controller device and Microsoft Hyper-V Fibre Channel HBA device which replaced all definitions dumped from Windows 10 Build 14347's storvsc.sys.
    • More VMBus protocol definitions for Microsoft Hyper-V Network Adapter device.
    • Add protocol definitions for Microsoft Hyper-V Virtual PCI Bus device.
    • Add protocol definitions for Microsoft Hyper-V Virtual Machine Bus File System device.
  • Revise all Mile.HyperV definitions via the following files from https://github.com/microsoft/mu_msvm/tree/258361bd0d61320df8984705111d94af20b4d8a4.
    • MsvmPkg\Include\Hv\HvStatus.h
    • MsvmPkg\Include\Hv\HvGuest.h
    • MsvmPkg\Include\Hv\HvGuestCpuid.h
    • MsvmPkg\Include\Hv\HvGuestMsr.h
    • MsvmPkg\Include\Hv\HvGuestSyntheticInterrupts.h
    • MsvmPkg\Include\Hv\HvGuestHypercall.h
    • MsvmPkg\MsvmPkg.dec
    • MsvmPkg\Include\Vmbus\NtStatus.h
    • MsvmPkg\Include\MsvmBase.h
    • MsvmPkg\VmbusDxe\VmbusP.h
    • MsvmPkg\VmbusDxe\ChannelMessages.h
    • MsvmPkg\Include\Vmbus\VmbusPacketFormat.h
    • MsvmPkg\VideoDxe\SynthVidProtocol.h
    • MsvmPkg\VideoDxe\VramSize.h
    • MsvmPkg\Include\Protocol\SynthKeyProtocol.h
    • MsvmPkg\StorvscDxe\VstorageProtocol.h
    • MsvmPkg\NetvscDxe\nvspprotocol.h
    • MsvmPkg\NetvscDxe\rndis.h
    • MsvmPkg\VpcivscDxe\wdm.h
    • MsvmPkg\VpcivscDxe\VpciProtocol.h
    • MsvmPkg\VpcivscDxe\PciBars.h
    • MsvmPkg\Include\Protocol\VmbusFileSystem.h
  • Revise all Mile.HyperV definitions via the following files from https://github.com/microsoft/OHCL-Linux-Kernel/tree/e9017243ba9b424f6516c4b206f454a1c2585fd2/include/uapi/hyperv.
  • Migrate from Mile.Project.Windows to Mile.Project.Configurations for streamlining the build toolchain of this package.

Kenji Mouri

Mile.HyperV 1.0.327.0

12 Aug 16:56
Compare
Choose a tag to compare

This release includes some fixes. Also, I have used Mile.HyperV in SynthRdp from NanaRun and other work in progress projects.

I hope this version will be the last version for Mile.HyperV 1.0 series. I hope I can add some VMBus devices definitions in the next version of Mile.HyperV.

Release Notes

  • Fix definition typos for resolving issues in pure C projects.

Kenji Mouri

Mile.HyperV 1.0.272.0

19 Jun 11:40
Compare
Choose a tag to compare

This release includes some fixes and improvements.

Release Notes

  • Add 2-bytes wchar_t interoperability support via introducing HV_WCHAR type.
  • Remove ANYSIZE_ARRAY dependency for Mile.HyperV.TLFS.

Kenji Mouri

Mile.HyperV 1.0.270.0

16 Jun 16:41
Compare
Choose a tag to compare

This release includes some fixes and improvements.

Release Notes

  • Add GUID interoperability support for HV_GUID.
  • Add version related macro definitions for Mile.HyperV.VMBus.h.

Kenji Mouri

Mile.HyperV 1.0.268.0 - First stable release with NuGet package

14 Jun 16:45
Compare
Choose a tag to compare

This is the first stable Mile.HyperV release. I have added several Hyper-V VMBus definitions. Also, I have introduced the NuGet packaging support and used that in my MSBuild C++ UEFI Application project with C++ PackageReference support.

image

Release Notes

  • Add Microsoft Hyper-V Fibre Channel HBA definitions from Windows 10 Build 14347's fcvsc.sys.
  • Add Microsoft Hyper-V Integration Components definitions from Windows 10 Build 14347's icsvc.dll and icsvcext.dll.
  • Add Microsoft Hyper-V Remote Desktop definitions from Windows 10 Build 19041's rdpcorets.dll and vmuidevices.dll.
  • Start to provide NuGet package.

Kenji Mouri

Mile.HyperV 0.3.205 - More Hyper-V TLFS definitions and introducing VMBus related definitions

12 Apr 16:14
Compare
Choose a tag to compare

This is the third Mile.HyperV release. I have revised the Mile.HyperV.TLFS definition via Build 14347 ntoskrnl.exe and Build 26063 kdhv.lib debug symbols from Microsoft and finally have a as up-to-date as possible Hyper-V Top Level Functional Specification definition header. I also add some VMBus pipe device definitions.

Release Notes

  • Improve the comment style via using C++ style comments which supported since Microsoft C/C++ 6.0 or other C compilers which supports C99.
  • Revise the Mile.HyperV.TLFS definition via Build 14347 ntoskrnl.exe and Build 26063 kdhv.lib debug symbols from Microsoft.
  • Add Mile.HyperV.Windows.VMBusPipe definitions.
  • Add Mile.HyperV.VMBus definitions.

Kenji Mouri

Mile.HyperV 0.2 - Beyond the Hyper-V TLFS 6.0b and the ionescu007/hdk's definitions

07 Mar 11:58
Compare
Choose a tag to compare

This is the second Mile.HyperV release. I have based on hvgdk.h in Windows Driver Kit 7.1 and MIT-licensed Hyper-V headers from Microsoft to refactor and revise the Mile.HyperV.TLFS definition and finally have a Hyper-V Top Level Functional Specification definition header which is way beyond the Hyper-V TLFS 6.0b and the ionescu007/hdk's definitions.

Next version of Mile.HyperV, I will try to add some VMBus pipe device definitions to other header and source files.

Release Notes

  • Revise the Mile.HyperV.TLFS definitions via hvgdk.h from Windows Driver Kit version 7.1.0.
  • Revise the Mile.HyperV.TLFS definitions via MIT-licensed Hyper-V headers from Microsoft.
  • Revise the Mile.HyperV.TLFS CPUID series definitions according to urlmon.dll's symbols.

Kenji Mouri

Mile.HyperV 0.1 - Hyper-V Top Level Functional Specification 6.0b conformance

04 Mar 11:37
Compare
Choose a tag to compare

This is the first Mile.HyperV release. The Mile.HyperV.TLFS definition is currently Hyper-V Top Level Functional Specification 6.0b Conformance and makes me really happy. Next version of Mile.HyperV, I will base on hvgdk.h in Windows Driver Kit 7.1 to refactor and revise the Mile.HyperV.TLFS definition.

Release Notes

  • Initial release.
  • Synchronize Mile.HyperV.TLFS to Hyper-V TLFS 6.0b definitions. (Thanks to gerhart01.)
  • Revise the list of Hypercall codes according to Windows symbols. (Thanks to Mez0ne.)
  • Revise HV_PARTITION_PRIVILEGE_MASK and HV_X64_HYPERVISOR_FEATURES according to Windows Kit symbols. (Thanks to Mez0ne.)

Kenji Mouri