tinyusb  0.4
Click here to lend your support to tinyusb donation and make a donation at pledgie.com
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
ehci_sitd_t Struct Reference

Split (Full-Speed) Isochronous Transfer Descriptor. More...

#include <ehci.h>

Data Fields

ehci_link_t next
 Word 0: Next Link Pointer.
 
uint32_t device_address: 7
 Word 1: siTD Endpoint Characteristics. More...
 
uint32_t __pad0__: 1
 reserved
 
uint32_t endpoint_number: 4
 This 4-bit field selects the particular endpoint number on the device serving as the data source or sink.
 
uint32_t __pad1__: 4
 This field is reserved and should be set to zero.
 
uint32_t hub_address: 7
 This field holds the device address of the transaction translators’ hub.
 
uint32_t __pad2__: 1
 reserved
 
uint32_t port_number: 7
 This field is the port number of the recipient transaction translator.
 
uint32_t direction: 1
 0 = OUT; 1 = IN. This field encodes whether the full-speed transaction should be an IN or OUT.
 
uint32_t __pad3__: 0
 
uint8_t interrupt_smask
 Word 2: Micro-frame Schedule Control. More...
 
uint8_t non_hs_interrupt_cmask
 This field (along with the Activeand SplitX-statefields in the Statusbyte) are used to determine during which micro-frames the host controller should execute start-split transactions.
 
uint16_t reserved
 reserved
 
volatile uint32_t: 1
 Word 3: siTD Transfer Status and Control. More...
 
volatile uint32_t split_state: 1
 
volatile uint32_t missed_uframe: 1
 
volatile uint32_t xact_err: 1
 
volatile uint32_t babble_err: 1
 
volatile uint32_t buffer_err: 1
 
volatile uint32_t error: 1
 
volatile uint32_t active: 1
 
volatile uint32_t cmask_progress: 8
 This field is used by the host controller to record which split-completes have been executed. See Section 4.12.3.3.2 for behavioral requirements.
 
volatile uint32_t total_bytes: 10
 This field is initialized by software to the total number of bytes expected in this transfer. Maximum value is 1023.
 
volatile uint32_t page_select: 1
 Used to indicate which data page pointer should be concatenated with the CurrentOffsetfield to construct a data buffer pointer.
 
uint32_t int_on_complete: 1
 Do not interrupt when transaction is complete. 1 = Do interrupt when transaction is complete.
 
uint32_t __pad4__: 0
 
uint32_t buffer [2]
 Word 4-5: Buffer Pointer List.
 
ehci_link_t back
 
uint8_t used
 SITD is 32-byte aligned but occupies only 28 –> 4 bytes for storing extra data.
 
uint8_t ihd_idx
 
uint8_t reserved2 [2]
 

Detailed Description

Split (Full-Speed) Isochronous Transfer Descriptor.

Definition at line 240 of file ehci.h.

Field Documentation

uint32_t device_address

Word 1: siTD Endpoint Characteristics.

This field selects the specific device serving as the data source or sink.

Definition at line 245 of file ehci.h.

uint8_t interrupt_smask

Word 2: Micro-frame Schedule Control.

This field (along with the Activeand SplitX-statefields in the Statusbyte) are used to determine during which micro-frames the host controller should execute complete-split transactions

Definition at line 257 of file ehci.h.

volatile uint32_t

Word 3: siTD Transfer Status and Control.

reserved

Definition at line 264 of file ehci.h.


The documentation for this struct was generated from the following file: