Expand description
This file contains all functions and structs used to handle polling operations for the fido backend device.
Structsยง
- Poll
Timer - PollTimer is a wrapper around the crosvm-provided
Timerstruct with a focus on maintaining a regular interval with easyarm()andclear()methods to start and stop the timer transparently from the interval.
Enumsยง
- Token ๐
Functionsยง
- handle_
packet_ ๐poll - Handles polling for available data to send back to the guest.
- packet_
timer_ ๐needs_ rearm - Checks whether we should re-arm the packet poll timer or not.
- poll_
for_ pending_ packets - This function is the main poll thread. It periodically wakes up to emulate a USB interrupt (poll) device behavior. It takes care of three different poll timers:
- process_
pending_ ๐transfer - Filter functions used to check for expired or canceled transfers. It is called over each USB transfer waiting in the pending queue. Returns true if the given transfer is still valid, otherwise false.
- signal_
device_ ๐lost - Signals to the current transfer that the underlying device has been lost and the xhci layer should recover by detaching the FIDO backend.