Fix keyboard and mouse input events dropping issue

Restarting of HID input devices causes input events dropping issue
which is critical for BMC KVM uses. For an example, user can't enter
to BIOS by doing keep pressing 'F2' or 'Del' key because of this issue.

To fix the issue, this commit removes the input device restarting
logic and refines error log journaling logic using errno checking.

Tested:
  1. Open BMCweb -> Server control -> KVM.
  2. Make a host reset and keep pressing 'F2' key.
  3. Was able to enter to BIOS using the key press.

Change-Id: Iec1bfad1d9e5825858844cab658bbfa3e6bc24f6
Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
3 files changed
tree: 09b25fef8bb124d130b575c1046068004b28786b
  1. create_usbhid.sh
  2. ikvm_args.cpp
  3. ikvm_args.hpp
  4. ikvm_input.cpp
  5. ikvm_input.hpp
  6. ikvm_manager.cpp
  7. ikvm_manager.hpp
  8. ikvm_server.cpp
  9. ikvm_server.hpp
  10. ikvm_video.cpp
  11. ikvm_video.hpp
  12. LICENSE
  13. MAINTAINERS
  14. meson.build
  15. obmc-ikvm.cpp
  16. README.md
  17. scancodes.hpp
  18. start-ipkvm.service
README.md

OpenBMC IpKVM Server

The obmc-ikvm application is a VNC server that provides access to the host graphics output. The application interfaces with the video device on the BMC that captures the host graphics, and then serves that video data on the RFB (remote framebuffer, also known as VNC) protocol. The application also interfaces with the BMC USB gadget device to pass HID events from the BMC to the host, allowing the user to interact with the host system.

Usage

Once the host is running and an appropriate HID gadget device is instantiated on the BMC, the application can be started with the following command: obmc-ikvm -v <video device path> -i <HID gadget device path>

For example:

obmc-ikvm -v /dev/video0 -i /dev/hidg0