Struct d1_pac::usb1::ehci_capability::hccparams::R

source ·
pub struct R(/* private fields */);
Expand description

Register hccparams reader

Implementations§

source§

impl R

source

pub fn programmable_frame_list_flag(&self) -> PROGRAMMABLE_FRAME_LIST_FLAG_R

Bit 1 - Programmable Frame List Flag

If this bit is set to a zero, then system software must use a frame list length of 1024 elements with this host controller. The USBCMD register Frame List Size field is a read-only register and should be set to zero.

If set to 1, then system software can specify and use the frame list in the USBCMD register Frame List Size field to cofigure the host controller.

The frame list must always aligned on a 4K page boundary. This requirement ensures that the frame list is always physically contiguous.

source

pub fn asynchronous_schedule_park_capability( &self, ) -> ASYNCHRONOUS_SCHEDULE_PARK_CAPABILITY_R

Bit 2 - Asynchronous Schedule Park Capability

If this bit is set to a one, then the host controller supports the park feature for high-speed queue heads in the Asynchronous Schedule. The feature can be disabled or enabled and set to a specific level by using the Asynchronous Schedule Park Mode Enable and Asynchronous Schedule Park Mode Count fields in the USBCMD register.

source

pub fn isochronous_scheduling_threshold( &self, ) -> ISOCHRONOUS_SCHEDULING_THRESHOLD_R

Bits 4:7 - Isochronous Scheduling Threshold

This field indicates, relative to the current position of the executing host controller, where software can reliably update the isochronous schedule.

When bit[7] is zero, the value of the least significant 3 bits indicates the number of micro-frames a host controller can hold a set of isochronous data structures(one or more) before flushing the state. When bit[7] is a one, then host software assumes the host controller may cache an isochronous data structure for an entire frame.

source

pub fn eecp(&self) -> EECP_R

Bits 8:15 - EHCI Extended Capabilities Pointer (EECP)

This optional field indicates the existence of a capabilities list. A value of 00b indicates no extended capabilities are implemented. A non-zero value in this register indicates the offset in PCI configuration space of the first EHCI extended capabiliby. The pointer value must be 40h or greater if implemented to maintain to consistency of the PCI header defined for this calss of device.

Methods from Deref<Target = R<HCCPARAMS_SPEC>>§

source

pub fn bits(&self) -> REG::Ux

Reads raw bits from register.

Trait Implementations§

source§

impl Deref for R

§

type Target = R<HCCPARAMS_SPEC>

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl From<R<HCCPARAMS_SPEC>> for R

source§

fn from(reader: R<HCCPARAMS_SPEC>) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for R

§

impl RefUnwindSafe for R

§

impl Send for R

§

impl Sync for R

§

impl Unpin for R

§

impl UnwindSafe for R

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>,

§

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>,

§

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.