Bug 210175

Summary: [hyper-v] V2 input from mouse/keyboard not captured
Product: Base System Reporter: mdzieg <mdzieg>
Component: miscAssignee: freebsd-virtualization mailing list <virtualization>
Status: Open ---    
Severity: Affects Some People CC: decui, fbsd44, gonzo, sepherosa, weh, whu
Priority: ---    
Version: CURRENT   
Hardware: amd64   
OS: Any   

Description mdzieg 2016-06-09 19:01:01 UTC
Hello,

I am trying to install FreeBSD on v2 of HyperV (works fine on v1).

Latest (May) installer finally loads well. The problem is that mouse and keyboard input is not captured at all. Installer is properly displayed. Hyper-V claims keyboard input is captured but nothing works.

Could you please look into this issue?
Comment 1 Sepherosa Ziehau 2016-06-14 01:46:46 UTC
The keyboard driver for gen2 hyper-v is planned, though it has not been started yet.  I'd suggest you use gen1 for now.
Comment 2 Bob Martin 2018-09-22 00:33:36 UTC
Installed 11.2 release on Hyper-V (gen2)
All works well accept no mouse (nothing in /dev)
Comment 3 Dexuan Cui 2018-09-22 02:21:20 UTC
Hyper-V keyboard driver for Gen2 VM was added in 2017, but Hyper-V mouse driver has not been implemented.
Comment 4 Oleksandr Tymoshenko freebsd_committer freebsd_triage 2019-01-22 20:34:00 UTC
(In reply to Dexuan Cui from comment #3)

Dexuan, are there any plans to implement the mouse driver? Or is there spec available to developers?
Comment 5 Dexuan Cui 2019-01-22 20:57:15 UTC
(In reply to Oleksandr Tymoshenko from comment #4)
Unluckily there is no good spec, as far as I know. At least I don't have such a spec at all. :-(

I'm afraid the only good reference is the Linux version of the driver:
https://github.com/torvalds/linux/blob/master/drivers/hid/hid-hyperv.c

The driver doesn't look very complex, so I hope it won't be too difficult to port it to BSD. 

+whu (Wei) who may help on this.
Comment 6 Oleksandr Tymoshenko freebsd_committer freebsd_triage 2019-01-22 22:36:03 UTC
(In reply to Dexuan Cui from comment #5)

Thanks! Just wanted to have some reference in this PR in case somebody gets interested in implementing. I think Linux driver should be enough, it doesn't look complicated.