From 100e6e48ad292406fb6f0a7eeb85465850bc28c7 Mon Sep 17 00:00:00 2001 From: Jingkui Wang Date: Fri, 8 Mar 2019 20:41:57 -0800 Subject: implement xhci and add it to pci bus Implement xhci controller, setup seccomp filters and add xhci to pci bus. CQ-DEPEND=CL:1512761 BUG=chromium:831850 TEST=local build Change-Id: I5c05452ece66e99d3a670e259e095fca616e835d Reviewed-on: https://chromium-review.googlesource.com/1512762 Commit-Ready: ChromeOS CL Exonerator Bot Tested-by: Jingkui Wang Reviewed-by: Jingkui Wang --- vm_control/src/lib.rs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'vm_control/src') diff --git a/vm_control/src/lib.rs b/vm_control/src/lib.rs index ee24b61..c6115ad 100644 --- a/vm_control/src/lib.rs +++ b/vm_control/src/lib.rs @@ -220,6 +220,7 @@ impl VmRequest { run_mode: &mut Option, balloon_host_socket: &UnixSeqpacket, disk_host_sockets: &[MsgSocket], + usb_control_socket: &UsbControlSocket, ) -> VmResponse { match *self { VmRequest::Exit => { @@ -316,8 +317,18 @@ impl VmRequest { } } VmRequest::UsbCommand(ref cmd) => { - error!("not implemented yet"); - VmResponse::Ok + let res = usb_control_socket.send(cmd); + if let Err(e) = res { + error!("fail to send command to usb control socket: {}", e); + return VmResponse::Err(SysError::new(EIO)); + } + match usb_control_socket.recv() { + Ok(response) => VmResponse::UsbResponse(response), + Err(e) => { + error!("fail to recv command from usb control socket: {}", e); + return VmResponse::Err(SysError::new(EIO)); + } + } } } } -- cgit 1.4.1