[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] Pass-through of non-USB input devices

I posted about this topic some time ago, as I'm trying to do something similar and I ran into the same problem.

I assume you are referring to this


which sounds like suitable solution for your case (the article even mentions PS/2 mouse an keyboard on a Thinkpad when using VGA passthrough). Unfortunately for me, my machine has no IOMMU/VT-d so VGA passthrough is not an option, and I've been unsuccessful in using PCI-passthrough on my Intel integrated GPU, but it sounds like you've had better luck so far.

My advice would be to install the latest Qemu via the package manager, uninstall Qemu but keep its dependencies, and try compiling Qemu 2.6.0-rc2. You may also need to install newer dependencies by hand, and possibly rebuild Xen-tools with --with-system-qemu=<path> in order for it to work, so it's not exactly a trivial task.

I'm a little confused about how the virtual hardware would actually look in this configuration, however. Is qemu-2.6's linux-input designed to replace the xen_kbdfront paravirtual keyboard, or be used along with it? As I understand it, Qemu currently receives input from SDL/GTK/VNC/Spice and sends events to xen_kbdfront via its support for Xen paravirtualzation, and linux-input would simply be an alternative to a graphical frontend for receiving input (for use without SDL/GTK/VNC/Spice (effectively "-nographic") but with VGA passthrough instead). In this case I assume that the guest-side configuration would remain the same and xen_kbdfront would still be used, but I can't tell if instead Qemu-2.6's linux-input would emulate a physical PS/2 keyboard inside the guest. <p>Quoting Jiri 'Ghormoon' Novak &lt;<a href="mailto:ghormoon@xxxxxxxxx";>ghormoon@xxxxxxxxx</a>&gt;:</p><blockquote type="cite" style="border-left:2px solid blue;margin-left:2px;padding-left:12px;">Hi,<br />
<br />
there is input-linux in upcoming qemu 2.6, but you don't likely have<br />
that. The reason it was done is exactly that laptop keyboards are ps/2.<br />
If you're OK wit compiling qemu 2.6.0-rc2, but I don't know if anyone<br />
tried input-lionux on xen yet, I know some people on kvm (including me)<br />
<br />
Gh.<br />
<br />
Carl Schneider wrote:<blockquote type="cite" style="border-left:2px solid blue;margin-left:2px;padding-left:12px;">Hi,<br />
<br />
I am currently setting up a new laptop (x86_64) and want<br />
to pass the keyboard and mouse to a domU. Sadly,<br />
I noticed that they are attached via PS/2 (I think),<br />
and after searching for a while without finding a<br />
solution, I decided to ask here.<br />
<br />
So my question is: How do I pass devices to a domU,<br />
that do not have a USB-ID and are propably not attached via PCI,<br />
but are listed in /dev/input/ (and in the sysfs, of course).<br />
<br />
To be honest: I am not _that_ sure if the input<br />
devices are really attached via PS/2, as it looks like<br />
the LPC-Controller (speak: ISA-Bus) might be the device<br />
where they are attached to. But if I try to forward that<br />
PCI-Device, nothing happens (It normally does not even<br />
have a kernel module attached to), so I think this device<br />
does not attach the input devices to the system.<br />
<br />
I am using archlinux and compiled xen from source<br />
(release 4.6.1). I would not have a problem with<br />
applying a patch on my own.<br />
The device is a ThinkPad T460p with dedicated GPU. VT-d<br />
is working properly, as it can be seen in `xl dmesg` (Not supplied).<br />
<br />
<br />
One short off-topic question, as it is my first post here: Is the way of<br />
providing &quot;big&quot; outputs by pasting it in the text acceptable, or should<br />
these be supplied as an attachment?<br />
<br />
<br />
Thanks,<br />
Carl<br />
<br />
<br />
<br />
To supply some information about the device-structure:<br />
<br />
Relevant parts of `xl info`:<br />
machine&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : x86_64<br />
hw_caps&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; :<br />
bfebfbff:2c100800:00000000:00007f00:77fafbbf:00000000:00000121:029c6fbf<br />
virt_caps&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : hvm hvm_directio<br />
xen_version&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : 4.6.1<br />
xen_caps&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;: xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32<br />
hvm-3.0-x86_32p hvm-3.0-x86_64<br />
platform_params&nbsp; &nbsp; &nbsp; &nbsp; : virt_start=0xffff800000000000<br /> xen_commandline&nbsp; &nbsp; &nbsp; &nbsp; : /xen-4.6.1.gz xsave=1 dom0_mem=4096M,max:4096M<br />
dom0_max_vcpus=1 dom0_vcpus_pin iommu=1<br />
<br />
<br />
<br />
<br />
# lspci -tv<br />
-[0000:00]-+-00.0&nbsp; Intel Corporation Skylake Host Bridge/DRAM Registers<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-01.0-[01]--<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-01.2-[02]----00.0&nbsp; NVIDIA Corporation GM108M [GeForce 940MX]<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-02.0&nbsp; Intel Corporation Skylake Integrated Graphics<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-14.0&nbsp; Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-14.2&nbsp; Intel Corporation Sunrise Point-H Thermal subsystem<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-16.0&nbsp; Intel Corporation Sunrise Point-H CSME HECI #1<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-17.0&nbsp; Intel Corporation Sunrise Point-H SATA Controller<br />
[AHCI mode]<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-1c.0-[03]----00.0&nbsp; Intel Corporation Wireless 8260<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-1c.4-[04]----00.0&nbsp; Realtek Semiconductor Co., Ltd. RTS522A<br />
PCI Express Card Reader<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-1f.0&nbsp; Intel Corporation Sunrise Point-H LPC Controller<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-1f.2&nbsp; Intel Corporation Sunrise Point-H PMC<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-1f.3&nbsp; Intel Corporation Sunrise Point-H HD Audio<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;+-1f.4&nbsp; Intel Corporation Sunrise Point-H SMBus<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;\-1f.6&nbsp; Intel Corporation Ethernet Connection (2) I219-LM<br />
<br />
<br />
Relevant parts of /proc/bus/input/devices:<br />
I: Bus=0011 Vendor=0001 Product=0001 Version=ab54<br />
N: Name=&quot;AT Translated Set 2 keyboard&quot;<br />
P: Phys=isa0060/serio0/input0<br />
S: Sysfs=/devices/platform/i8042/serio0/input/input0<br />
U: Uniq=<br />
H: Handlers=sysrq kbd leds event0<br />
B: PROP=0<br />
B: EV=120013<br />
B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe<br />
B: MSC=10<br />
B: LED=7<br />
<br />
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1<br />
N: Name=&quot;SynPS/2 Synaptics TouchPad&quot;<br />
P: Phys=isa0060/serio1/input0<br />
S: Sysfs=/devices/platform/i8042/serio1/input/input7<br />
U: Uniq=<br />
H: Handlers=event8 mouse0<br />
B: PROP=5<br />
B: EV=b<br />
B: KEY=e520 10000 0 0 0 0<br />
B: ABS=660800011000003<br />
<br />
I: Bus=0011 Vendor=0002 Product=000a Version=0000<br />
N: Name=&quot;TPPS/2 IBM TrackPoint&quot;<br />
P: Phys=synaptics-pt/serio0/input0<br />
S: Sysfs=/devices/platform/i8042/serio1/serio2/input/input10<br />
U: Uniq=<br />
H: Handlers=event10 mouse1<br />
B: PROP=21<br />
B: EV=7<br />
B: KEY=70000 0 0 0 0<br />
B: REL=3<br />
<br />
_______________________________________________<br />
Xen-users mailing list<br />
<a href="mailto:Xen-users@xxxxxxxxxxxxx";>Xen-users@xxxxxxxxxxxxx</a><br />
<a href="http://lists.xen.org/xen-users"; target="_blank">http://lists.xen.org/xen-users</a></blockquote>_______________________________________________<br />
Xen-users mailing list<br />
<a href="mailto:Xen-users@xxxxxxxxx";>Xen-users@xxxxxxxxx</a>.<a href="orghttp://lists.xen.org/xen-users"; target="_blank">orghttp://lists.xen.org/xen-users</a></blockquote><br /><br />


ONLY AT VFEmail! - Use our Metadata Mitigator to keep your email out of the 
NSA's hands!
$24.95 ONETIME Lifetime accounts with Privacy Features! 15GB disk! No bandwidth quotas! Commercial and Bulk Mail Options!
Xen-users mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.