Struct d1_pac::usb1::ohci_control_status_partition::hc_command_status::R
source · pub struct R(/* private fields */);
Expand description
Register hc_command_status
reader
Implementations§
source§impl R
impl R
sourcepub fn host_controller_reset(&self) -> HOST_CONTROLLER_RESET_R
pub fn host_controller_reset(&self) -> HOST_CONTROLLER_RESET_R
Bit 0 - HostControllerReset
This bit is by HCD to initiate a software reset of HC. Regardless of the functional state of HC, it moves to the USBSuspend state in which most of the operational registers are reset except those stated otherwise; e.g, the InteruptRouting field of HcControl, and no Host bus accesses are allowed. This bit is cleared by HC upon the completion of the reset operation. The reset operation must be completed within 10 ms. This bit, when set, should not cause a reset to the Root Hub and no subsequent reset signaling should be asserted to its downstream ports.
sourcepub fn control_list_filled(&self) -> CONTROL_LIST_FILLED_R
pub fn control_list_filled(&self) -> CONTROL_LIST_FILLED_R
Bit 1 - ControlListFilled This bit is used to indicate whether there are any TDs on the Control list. It is set by HCD whenever it adds a TD to an ED in the Control list.
When HC begins to process the head of the Control list, it checks CLF. As long as ControlListFilled is 0, HC will not start processing the Control list. If CF is 1, HC will start processing the Control list and will set ControlListFilled to 0. If HC finds a TD on the list, then HC will set ControlListFilled to 1 causing the Control list processing to continue. If no TD is found on the Control list, and if the HCD does not set ControlListFilled , then ControlListFilled will still be 0 when HC completes processing the Control list and Control list processing will stop.
sourcepub fn bulkl_list_filled(&self) -> BULKL_LIST_FILLED_R
pub fn bulkl_list_filled(&self) -> BULKL_LIST_FILLED_R
Bit 2 - BulklListFilled
This bit is used to indicate whether there are any TDs on the Bulk list. It is set by HCD whenever it adds a TD to an ED in the Bulk list. When HC begins to process the head of the Bulk list, it checks BLF. As long as BulkListFilled is 0, HC will not start processing the Bulk list. If BulkListFilled is 1, HC will start processing the Bulk list and will set BF to 0. If HC finds a TD on the list, then HC will set BulkListFilled to 1 causing the Bulk list processing to continue. If no TD is found on the Bulk list, and if HCD does not set BulkListFilled , then BulkListFilled will still be 0 when HC completes processing the Bulk list and Bulk list processing will stop.
sourcepub fn owership_change_request(&self) -> OWERSHIP_CHANGE_REQUEST_R
pub fn owership_change_request(&self) -> OWERSHIP_CHANGE_REQUEST_R
Bit 3 - OwershipChangeRequest
This bit is set by an OS HCD to request a change of control of the HC. When set HC will set the OwnershipChange field in. After the changeover, this bit is cleared and remains so until the next request from OS HCD.
sourcepub fn scheduling_overrun_count(&self) -> SCHEDULING_OVERRUN_COUNT_R
pub fn scheduling_overrun_count(&self) -> SCHEDULING_OVERRUN_COUNT_R
Bits 16:17 - SchedulingOverrunCoun
These bits are incremented on each scheduling overrun error. It is initialized to 00b and wraps around at 11b. This will be incremented when a scheduling overrun is detected even if SchedulingOverrun in has already been set. This is used by HCD to monitor any persistent scheduling problem.