
Имя модуля: USB1 , базовый адрес: 0x05200000 Имя модуля: USB2 , базовый адрес: 0x05310000 Имя модуля: USB3 , базовый адрес: 0x05311000 Руководство п. 9.5.3 Регистров: 43 Имя регистра | Смещение 1) E_CAPLENGTH | 0x0000
typedef union e_caplength
{
struct
{
unsigned caplength : 8;
unsigned unused0 : 24;
} b;
unsigned long w;
} E_CAPLENGTH
2) E_HCIVERSION | 0x0002
typedef union e_hciversion
{
struct
{
unsigned hciversion : 16;
unsigned unused0 : 16;
} b;
unsigned long w;
} E_HCIVERSION
3) E_HCSPARAMS | 0x0004
typedef union e_hcsparams
{
struct
{
unsigned n_ports : 4;
unsigned unused0 : 3;
unsigned port_routing_rules : 1;
unsigned n_pcc : 4;
unsigned n_cc : 4;
unsigned unused1 : 4;
unsigned debug_port_number : 4;
unsigned unused2 : 8;
} b;
unsigned long w;
} E_HCSPARAMS
4) E_HCCPARAMS | 0x0008
typedef union e_hccparams
{
struct
{
unsigned unused0 : 1;
unsigned progr_frame_list_flg : 1;
unsigned asynch_sched_park_cap : 1;
unsigned reserv : 1;
unsigned iso_sched_threshold : 4;
unsigned eecp : 8;
unsigned unused1 : 16;
} b;
unsigned long w;
} E_HCCPARAMS
5) E_HCSPPORTROUTE | 0x000C
typedef union e_hcspportroute
{
struct
{
unsigned hcsp_ortroute : 32;
} b;
unsigned long w;
} E_HCSPPORTROUTE
6) E_USBCMD | 0x0010
typedef union e_usbcmd
{
struct
{
unsigned run_stop : 1;
unsigned host_controller_reset : 1;
unsigned frame_list_size : 2;
unsigned aperiod_sched_ena : 1;
unsigned asynch_sched_ena : 1;
unsigned inter_async_adv_doorbell : 1;
unsigned light_host_contr_res : 1;
unsigned asyn_sched_pm_count : 2;
unsigned unused0 : 1;
unsigned asyn_sched_pm_ena : 1;
unsigned unused1 : 4;
unsigned interrupt_threshold_control : 8;
unsigned unused2 : 8;
} b;
unsigned long w;
} E_USBCMD
7) E_USBSTS | 0x0014
typedef union e_usbsts
{
struct
{
unsigned usb_int : 1;
unsigned usb_err_int : 1;
unsigned port_change_detect : 1;
unsigned frame_list_rollover : 1;
unsigned host_system_error : 1;
unsigned inter_async_advance : 1;
unsigned unused0 : 6;
unsigned hc_halted : 1;
unsigned reclamation : 1;
unsigned period_sched_stat : 1;
unsigned asynchr_sched_stat : 1;
unsigned unused1 : 16;
} b;
unsigned long w;
} E_USBSTS
8) E_USBINTR | 0x0018
typedef union e_usbintr
{
struct
{
unsigned usb_inter_ena : 1;
unsigned usb_err_inter_ena : 1;
unsigned port_change_inter_ena : 1;
unsigned frame_list_roll_ena : 1;
unsigned host_syst_err_ena : 1;
unsigned inter_async_adv_ena : 1;
unsigned unused0 : 26;
} b;
unsigned long w;
} E_USBINTR
9) E_FRINDEX | 0x001C
typedef union e_frindex
{
struct
{
unsigned frame_index : 14;
unsigned unused0 : 18;
} b;
unsigned long w;
} E_FRINDEX
10) E_CTRLDSSEGMENT | 0x0020
typedef union e_ctrldssegment
{
struct
{
unsigned unused0 : 32;
} b;
unsigned long w;
} E_CTRLDSSEGMENT
11) E_PERIODICLISTBASE | 0x0024
typedef union e_periodiclistbase
{
struct
{
unsigned unused0 : 12;
unsigned base_addr : 20;
} b;
unsigned long w;
} E_PERIODICLISTBASE
12) E_ASYNCLISTADDR | 0x0028
typedef union e_asynclistaddr
{
struct
{
unsigned unused0 : 5;
unsigned link_pointer : 27;
} b;
unsigned long w;
} E_ASYNCLISTADDR
13) E_TIMERINTERRUPT | 0x0030
typedef union e_timerinterrupt
{
struct
{
unsigned timer_ena : 1;
unsigned standby_irq_stat : 1;
unsigned standby_irq_ena : 1;
unsigned unused0 : 5;
unsigned timer_cfg : 2;
unsigned unused1 : 22;
} b;
unsigned long w;
} E_TIMERINTERRUPT
14) E_CONFIGFLAG | 0x0050
typedef union e_configflag
{
struct
{
unsigned configure_flag : 1;
unsigned unused0 : 31;
} b;
unsigned long w;
} E_CONFIGFLAG
15) E_PORTSC | 0x0054
typedef union e_portsc
{
struct
{
unsigned current_connect_status : 1;
unsigned connect_status_change : 1;
unsigned port_enabled_disabled : 1;
unsigned port_enable_disable_change : 1;
unsigned over_current_active : 1;
unsigned over_current_change : 1;
unsigned force_port_resume : 1;
unsigned suspend : 1;
unsigned port_reset : 1;
unsigned unused0 : 1;
unsigned line_status : 2;
unsigned unused1 : 1;
unsigned port_owner : 1;
unsigned unused2 : 2;
unsigned port_test_control : 4;
unsigned wkcnnt_e : 1;
unsigned wkdscnnt_e : 1;
unsigned unused3 : 10;
} b;
unsigned long w;
} E_PORTSC
16) O_HcRevision | 0x0400
typedef union o_hcrevision
{
struct
{
unsigned revision : 8;
unsigned unused0 : 24;
} b;
unsigned long w;
} O_HcRevision
17) O_HcControl | 0x0404
typedef union o_hccontrol
{
struct
{
unsigned control_bulk_service_ratio : 2;
unsigned periodic_list_enable : 1;
unsigned isochronous_enable : 1;
unsigned control_list_enable : 1;
unsigned bulk_list_enable : 1;
unsigned host_contr_func_state : 2;
unsigned interrupt_routing : 1;
unsigned remote_wakeup_connected : 1;
unsigned remote_wakeup_enable : 1;
unsigned unused0 : 21;
} b;
unsigned long w;
} O_HcControl
18) O_HcCommandStatus | 0x0408
typedef union o_hccommandstatus
{
struct
{
unsigned host_controller_reset : 1;
unsigned control_list_filled : 1;
unsigned bulk_list_filled : 1;
unsigned owership_change_request : 1;
unsigned unused0 : 12;
unsigned scheduling_overrun_count : 2;
unsigned reserv : 14;
} b;
unsigned long w;
} O_HcCommandStatus
19) O_HcInterruptStatus | 0x040C
typedef union o_hcinterruptstatus
{
struct
{
unsigned scheduling_overrun : 1;
unsigned write_back_done_head : 1;
unsigned start_of_frame : 1;
unsigned resume_detected : 1;
unsigned un_recoverable_error : 1;
unsigned frame_number_overflow : 1;
unsigned root_hub_status_change : 1;
unsigned unused0 : 25;
} b;
unsigned long w;
} O_HcInterruptStatus
20) O_HcInterruptEnable | 0x0410
typedef union o_hcinterruptenable
{
struct
{
unsigned scheduling_overrun : 1;
unsigned write_back_done_head : 1;
unsigned start_of_frame : 1;
unsigned resume_detected : 1;
unsigned unrecoverable_error : 1;
unsigned frame_number_overflow : 1;
unsigned root_hub_status_change : 1;
unsigned unused0 : 24;
unsigned master_interrupt_enable : 1;
} b;
unsigned long w;
} O_HcInterruptEnable
21) O_HcInterruptDisable | 0x0414
typedef union o_hcinterruptdisable
{
struct
{
unsigned scheduling_overrun : 1;
unsigned write_back_done_head : 1;
unsigned start_of_frame : 1;
unsigned resume_detected : 1;
unsigned unrecoverable_error : 1;
unsigned frame_number_overflow : 1;
unsigned root_hub_status_change : 1;
unsigned unused0 : 24;
unsigned master_interrupt_enable : 1;
} b;
unsigned long w;
} O_HcInterruptDisable
22) O_HcHCCA | 0x0418
typedef union o_hchcca
{
struct
{
unsigned hcca_7_0 : 8;
unsigned cca_31_8 : 24;
} b;
unsigned long w;
} O_HcHCCA
23) O_HcPeriodCurrentED | 0x041C
typedef union o_hcperiodcurrented
{
struct
{
unsigned pced_3_0 : 4;
unsigned pced_31_4 : 28;
} b;
unsigned long w;
} O_HcPeriodCurrentED
24) O_HcControlHeadED | 0x0420
typedef union o_hccontrolheaded
{
struct
{
unsigned ehcd_3_0 : 4;
unsigned hcd_31_4 : 28;
} b;
unsigned long w;
} O_HcControlHeadED
25) O_HcControlCurrentED | 0x0424
typedef union o_hccontrolcurrented
{
struct
{
unsigned cced_3_0 : 4;
unsigned cced_31_4 : 28;
} b;
unsigned long w;
} O_HcControlCurrentED
26) O_HcBulkHeadED | 0x0428
typedef union o_hcbulkheaded
{
struct
{
unsigned bhed_3_0 : 4;
unsigned bhed_31_4 : 28;
} b;
unsigned long w;
} O_HcBulkHeadED
27) O_HcBulkCurrentED | 0x042C
typedef union o_hcbulkcurrented
{
struct
{
unsigned bulk_current_ed_3_0 : 4;
unsigned bulk_current_ed_31_4 : 28;
} b;
unsigned long w;
} O_HcBulkCurrentED
28) O_HcDoneHead | 0x0430
typedef union o_hcdonehead
{
struct
{
unsigned hc_done_head_3_0 : 4;
unsigned hc_done_head_31_4 : 28;
} b;
unsigned long w;
} O_HcDoneHead
29) O_HcFmInterval | 0x0434
typedef union o_hcfminterval
{
struct
{
unsigned frame_interval : 14;
unsigned unused0 : 2;
unsigned fs_largest_data_packet : 15;
unsigned frame_interval_toggler : 1;
} b;
unsigned long w;
} O_HcFmInterval
30) O_HcFmRemaining | 0x0438
typedef union o_hcfmremaining
{
struct
{
unsigned frame_remaining : 14;
unsigned unused0 : 17;
unsigned frame_remaining_toggle : 1;
} b;
unsigned long w;
} O_HcFmRemaining
31) O_HcFmNumber | 0x043C
typedef union o_hcfmnumber
{
struct
{
unsigned frame_number : 16;
unsigned unused0 : 16;
} b;
unsigned long w;
} O_HcFmNumber
32) O_HcPeriodicStart | 0x0440
typedef union o_hcperiodicstart
{
struct
{
unsigned periodic_start : 14;
unsigned unused0 : 18;
} b;
unsigned long w;
} O_HcPeriodicStart
33) O_HcLSThreshold | 0x0444
typedef union o_hclsthreshold
{
struct
{
unsigned lst_hres_hold : 12;
unsigned unused0 : 20;
} b;
unsigned long w;
} O_HcLSThreshold
34) O_HcRhDescriptorA | 0x0448
typedef union o_hcrhdescriptora
{
struct
{
unsigned number_down_stream_ports : 8;
unsigned no_power_switching : 1;
unsigned power_switching_mode : 1;
unsigned device_type : 1;
unsigned over_current_protection_mode : 1;
unsigned no_over_current_protection : 1;
unsigned unused0 : 11;
unsigned potpgt : 8;
} b;
unsigned long w;
} O_HcRhDescriptorA
35) O_HcRhDescriptorB | 0x044C
typedef union o_hcrhdescriptorb
{
struct
{
unsigned device_removable : 16;
unsigned port_power_control_mask : 16;
} b;
unsigned long w;
} O_HcRhDescriptorB
36) O_HcRhStatus | 0x0450
typedef union o_hcrhstatus
{
struct
{
unsigned local_power_status : 1;
unsigned over_current_indicator : 1;
unsigned unused0 : 13;
unsigned device_remote_wakeup_enable : 1;
unsigned local_power_startus_change : 1;
unsigned over_current_indicator_chang : 1;
unsigned unused1 : 13;
unsigned clear_remote_wakeup_enable : 1;
} b;
unsigned long w;
} O_HcRhStatus
37) O_HcRhPortStatus | 0x0454
typedef union o_hcrhportstatus
{
struct
{
unsigned current_connect_status : 1;
unsigned port_enable_status : 1;
unsigned port_suspend_status : 1;
unsigned ort_over_current_indicator : 1;
unsigned port_reset_status : 1;
unsigned unused0 : 3;
unsigned port_power_status : 1;
unsigned low_speed_device_attached : 1;
unsigned unused1 : 6;
unsigned connect_status_change : 1;
unsigned port_enable_status_change : 1;
unsigned port_suspend_status_change : 1;
unsigned port_over_current_indicator_change : 1;
unsigned port_reset_status_change : 1;
unsigned unused2 : 11;
} b;
unsigned long w;
} O_HcRhPortStatus
38) USB_CTRL | 0x0800
typedef union usb_ctrl
{
struct
{
unsigned ulpi_bypass_enable : 1;
unsigned unused0 : 1;
unsigned rc16m_clk_enable : 1;
unsigned unused1 : 5;
unsigned incrx_align_ena : 1;
unsigned incr4_ena : 1;
unsigned incr8_ena : 1;
unsigned incr16_ena : 1;
unsigned pp2vbus : 1;
unsigned unused2 : 5;
unsigned resume_se0_trans : 1;
unsigned unused3 : 1;
unsigned ehci_hs_force : 1;
unsigned unused4 : 3;
unsigned simulation_mode : 1;
unsigned ohci_count_select : 1;
unsigned unused5 : 2;
unsigned dma_transf_stat_ena : 1;
unsigned unused6 : 3;
} b;
unsigned long w;
} USB_CTRL
39) PHY_Control | 0x0810
typedef union phy_control
{
struct
{
unsigned vatestenb : 2;
unsigned commononn : 1;
unsigned siddq : 1;
unsigned vbusvldextsel : 1;
unsigned vbusvldext : 1;
unsigned idpullup : 1;
unsigned loopbackenb : 1;
unsigned unused0 : 24;
} b;
unsigned long w;
} PHY_Control
40) HSIC_PHY_tune1 | 0x081C
typedef union hsic_phy_tune1
{
struct
{
unsigned txsrtune : 4;
unsigned txrpdtune : 2;
unsigned txrputune : 2;
unsigned unused0 : 25;
} b;
unsigned long w;
} HSIC_PHY_tune1
41) HSIC_PHY_tune2 | 0x0820
typedef union hsic_phy_tune2
{
struct
{
unsigned refclk_div : 4;
unsigned siddq : 12;
unsigned testdatain : 8;
unsigned testaddr : 4;
unsigned testclk : 1;
unsigned testdataoutsel : 1;
unsigned testburnin : 1;
unsigned bist_en : 1;
} b;
unsigned long w;
} HSIC_PHY_tune2
42) HSIC_PHY_tune3 | 0x0824
typedef union hsic_phy_tune3
{
struct
{
unsigned non_hsic_mode_bist_done : 1;
unsigned non_hsic_mode_bist_error : 1;
unsigned hsic_testdata_out : 2;
unsigned sic_bist_done : 1;
unsigned hsic_bist_error : 1;
unsigned unused0 : 26;
} b;
unsigned long w;
} HSIC_PHY_tune3
43) USB_SPDCR | 0x0828
typedef union usb_spdcr
{
struct
{
unsigned port_disable_control : 2;
unsigned unused0 : 2;
unsigned resume_sel : 1;
unsigned unused1 : 11;
unsigned se0_status : 1;
unsigned unused2 : 15;
} b;
unsigned long w;
} USB_SPDCR
|
![]() |