diff options
author | Jingkui Wang <jkwang@google.com> | 2019-04-09 14:30:21 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-05-25 02:31:16 -0700 |
commit | 6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68 (patch) | |
tree | 63514ac56b73078479bc662a8f9514b05e11cc85 /devices/src/usb/xhci/ring_buffer.rs | |
parent | a27f3a74d3c54fe944489f54432862144a8868b3 (diff) | |
download | crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.tar crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.tar.gz crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.tar.bz2 crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.tar.lz crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.tar.xz crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.tar.zst crosvm-6c1e23eee3065b3f3d6fc4fb992ac9884dbabf68.zip |
crosvm: update xhci abi to use new bit_field features
We don't need schema anymore. Will use bool and custom enums. BUG=None TEST=local build and run crosvm Change-Id: I1396916878f2903b17a75f375aee4eec1ced0583 Signed-off-by: Daniel Verkamp <dverkamp@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1564780 Tested-by: kokoro <noreply+kokoro@google.com> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org> Reviewed-by: Zach Reizner <zachr@chromium.org>
Diffstat (limited to 'devices/src/usb/xhci/ring_buffer.rs')
-rw-r--r-- | devices/src/usb/xhci/ring_buffer.rs | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/devices/src/usb/xhci/ring_buffer.rs b/devices/src/usb/xhci/ring_buffer.rs index 72c9ec0..a178ebb 100644 --- a/devices/src/usb/xhci/ring_buffer.rs +++ b/devices/src/usb/xhci/ring_buffer.rs @@ -67,14 +67,14 @@ impl RingBuffer { pub fn dequeue_transfer_descriptor(&mut self) -> Result<Option<TransferDescriptor>> { let mut td: TransferDescriptor = TransferDescriptor::new(); while let Some(addressed_trb) = self.get_current_trb()? { - if let Ok(TrbType::Link) = addressed_trb.trb.trb_type() { + if let Ok(TrbType::Link) = addressed_trb.trb.get_trb_type() { let link_trb = addressed_trb .trb .cast::<LinkTrb>() .map_err(Error::CastTrb)?; self.dequeue_pointer = GuestAddress(link_trb.get_ring_segment_pointer()); self.consumer_cycle_state = - self.consumer_cycle_state != link_trb.get_toggle_cycle_bit(); + self.consumer_cycle_state != link_trb.get_toggle_cycle(); continue; } @@ -131,7 +131,7 @@ impl RingBuffer { usb_debug!("{}: trb read from memory {:?}", self.name.as_str(), trb); // If cycle bit of trb does not equal consumer cycle state, the ring is empty. // This trb is invalid. - if trb.get_cycle_bit() != self.consumer_cycle_state { + if trb.get_cycle() != self.consumer_cycle_state { usb_debug!( "cycle bit does not match, self cycle {}", self.consumer_cycle_state @@ -163,9 +163,9 @@ mod test { // trb 2 | trb 4 | trb 6 // l trb - l trb - l trb to 0x100 let mut trb = NormalTrb::new(); - trb.set_trb_type(TrbType::Normal as u8); + trb.set_trb_type(TrbType::Normal); trb.set_data_buffer(1); - trb.set_chain(1); + trb.set_chain(true); gm.write_obj_at_addr(trb.clone(), GuestAddress(0x100)) .unwrap(); @@ -174,7 +174,7 @@ mod test { .unwrap(); let mut ltrb = LinkTrb::new(); - ltrb.set_trb_type(TrbType::Link as u8); + ltrb.set_trb_type(TrbType::Link); ltrb.set_ring_segment_pointer(0x200); gm.write_obj_at_addr(ltrb, GuestAddress(0x100 + 2 * trb_size)) .unwrap(); @@ -184,7 +184,7 @@ mod test { // Chain bit is false. trb.set_data_buffer(4); - trb.set_chain(0); + trb.set_chain(false); gm.write_obj_at_addr(trb, GuestAddress(0x200 + 1 * trb_size)) .unwrap(); @@ -193,12 +193,12 @@ mod test { .unwrap(); trb.set_data_buffer(5); - trb.set_chain(1); + trb.set_chain(true); gm.write_obj_at_addr(trb, GuestAddress(0x300)).unwrap(); // Chain bit is false. trb.set_data_buffer(6); - trb.set_chain(0); + trb.set_chain(false); gm.write_obj_at_addr(trb, GuestAddress(0x300 + 1 * trb_size)) .unwrap(); @@ -237,9 +237,9 @@ mod test { let mut transfer_ring = RingBuffer::new(String::new(), gm.clone()); let mut trb = NormalTrb::new(); - trb.set_trb_type(TrbType::Normal as u8); + trb.set_trb_type(TrbType::Normal); trb.set_data_buffer(1); - trb.set_chain(1); + trb.set_chain(true); gm.write_obj_at_addr(trb.clone(), GuestAddress(0x100)) .unwrap(); @@ -248,9 +248,9 @@ mod test { .unwrap(); let mut ltrb = LinkTrb::new(); - ltrb.set_trb_type(TrbType::Link as u8); + ltrb.set_trb_type(TrbType::Link); ltrb.set_ring_segment_pointer(0x200); - ltrb.set_toggle_cycle(1); + ltrb.set_toggle_cycle(true); gm.write_obj_at_addr(ltrb, GuestAddress(0x100 + 2 * trb_size)) .unwrap(); |