RegisterBlock

Struct RegisterBlock 

Source
#[repr(C)]
pub struct RegisterBlock {
Show 23 fields pub hcrevision: Reg<HCREVISION_SPEC>, pub hccontrol: Reg<HCCONTROL_SPEC>, pub hccommandstatus: Reg<HCCOMMANDSTATUS_SPEC>, pub hcinterruptstatus: Reg<HCINTERRUPTSTATUS_SPEC>, pub hcinterruptenable: Reg<HCINTERRUPTENABLE_SPEC>, pub hcinterruptdisable: Reg<HCINTERRUPTDISABLE_SPEC>, pub hchcca: Reg<HCHCCA_SPEC>, pub hcperiodcurrented: Reg<HCPERIODCURRENTED_SPEC>, pub hccontrolheaded: Reg<HCCONTROLHEADED_SPEC>, pub hccontrolcurrented: Reg<HCCONTROLCURRENTED_SPEC>, pub hcbulkheaded: Reg<HCBULKHEADED_SPEC>, pub hcbulkcurrented: Reg<HCBULKCURRENTED_SPEC>, pub hcdonehead: Reg<HCDONEHEAD_SPEC>, pub hcfminterval: Reg<HCFMINTERVAL_SPEC>, pub hcfmremaining: Reg<HCFMREMAINING_SPEC>, pub hcfmnumber: Reg<HCFMNUMBER_SPEC>, pub hcperiodicstart: Reg<HCPERIODICSTART_SPEC>, pub hclsthreshold: Reg<HCLSTHRESHOLD_SPEC>, pub hcrhdescriptora: Reg<HCRHDESCRIPTORA_SPEC>, pub hcrhdescriptorb: Reg<HCRHDESCRIPTORB_SPEC>, pub hcrhstatus: Reg<HCRHSTATUS_SPEC>, pub hcrhportstatus: Reg<HCRHPORTSTATUS_SPEC>, pub portmode: Reg<PORTMODE_SPEC>, /* private fields */
}
Expand description

Register block

Fields§

§hcrevision: Reg<HCREVISION_SPEC>

0x00 - BCD representation of the version of the HCI specification that is implemented by the Host Controller (HC)

§hccontrol: Reg<HCCONTROL_SPEC>

0x04 - Defines the operating modes of the HC

§hccommandstatus: Reg<HCCOMMANDSTATUS_SPEC>

0x08 - This register is used to receive the commands from the Host Controller Driver (HCD)

§hcinterruptstatus: Reg<HCINTERRUPTSTATUS_SPEC>

0x0c - Indicates the status on various events that cause hardware interrupts by setting the appropriate bits

§hcinterruptenable: Reg<HCINTERRUPTENABLE_SPEC>

0x10 - Controls the bits in the HcInterruptStatus register and indicates which events will generate a hardware interrupt

§hcinterruptdisable: Reg<HCINTERRUPTDISABLE_SPEC>

0x14 - The bits in this register are used to disable corresponding bits in the HCInterruptStatus register and in turn disable that event leading to hardware interrupt

§hchcca: Reg<HCHCCA_SPEC>

0x18 - Contains the physical address of the host controller communication area

§hcperiodcurrented: Reg<HCPERIODCURRENTED_SPEC>

0x1c - Contains the physical address of the current isochronous or interrupt endpoint descriptor

§hccontrolheaded: Reg<HCCONTROLHEADED_SPEC>

0x20 - Contains the physical address of the first endpoint descriptor of the control list

§hccontrolcurrented: Reg<HCCONTROLCURRENTED_SPEC>

0x24 - Contains the physical address of the current endpoint descriptor of the control list

§hcbulkheaded: Reg<HCBULKHEADED_SPEC>

0x28 - Contains the physical address of the first endpoint descriptor of the bulk list

§hcbulkcurrented: Reg<HCBULKCURRENTED_SPEC>

0x2c - Contains the physical address of the current endpoint descriptor of the bulk list

§hcdonehead: Reg<HCDONEHEAD_SPEC>

0x30 - Contains the physical address of the last transfer descriptor added to the ‘Done’ queue

§hcfminterval: Reg<HCFMINTERVAL_SPEC>

0x34 - Defines the bit time interval in a frame and the full speed maximum packet size which would not cause an overrun

§hcfmremaining: Reg<HCFMREMAINING_SPEC>

0x38 - A 14-bit counter showing the bit time remaining in the current frame

§hcfmnumber: Reg<HCFMNUMBER_SPEC>

0x3c - Contains a 16-bit counter and provides the timing reference among events happening in the HC and the HCD

§hcperiodicstart: Reg<HCPERIODICSTART_SPEC>

0x40 - Contains a programmable 14-bit value which determines the earliest time HC should start processing a periodic list

§hclsthreshold: Reg<HCLSTHRESHOLD_SPEC>

0x44 - Contains 11-bit value which is used by the HC to determine whether to commit to transfer a maximum of 8-byte LS packet before EOF

§hcrhdescriptora: Reg<HCRHDESCRIPTORA_SPEC>

0x48 - First of the two registers which describes the characteristics of the root hub

§hcrhdescriptorb: Reg<HCRHDESCRIPTORB_SPEC>

0x4c - Second of the two registers which describes the characteristics of the Root Hub

§hcrhstatus: Reg<HCRHSTATUS_SPEC>

0x50 - This register is divided into two parts

§hcrhportstatus: Reg<HCRHPORTSTATUS_SPEC>

0x54 - Controls and reports the port events on a per-port basis

§portmode: Reg<PORTMODE_SPEC>

0x5c - Controls the port if it is attached to the host block or the device block

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.