Home
last modified time | relevance | path

Searched refs:hcd_ehci (Results 1 – 25 of 42) sorted by relevance

12

/USBX-v6.2.1/common/usbx_host_controllers/src/
Dux_hcd_ehci_initialize.c37 #define UX_HCD_EHCI_EXT_USB_HOST_MODE_ENABLE(hcd_ehci) do \ argument
39 _ux_hcd_ehci_register_write(hcd_ehci, (hcd_ehci -> ux_hcd_ehci_hcor + 0x1A), 0x03); \
42 #define UX_HCD_EHCI_EXT_USB_HOST_MODE_ENABLE(hcd_ehci) argument
129 UX_HCD_EHCI *hcd_ehci; in _ux_hcd_ehci_initialize()
147 hcd_ehci = _ux_utility_memory_allocate(UX_NO_ALIGN, UX_REGULAR_MEMORY, sizeof(UX_HCD_EHCI)); in _ux_hcd_ehci_initialize()
148 if (hcd_ehci == UX_NULL) in _ux_hcd_ehci_initialize()
152 hcd -> ux_hcd_controller_hardware = (VOID *) hcd_ehci; in _ux_hcd_ehci_initialize()
155 hcd_ehci -> ux_hcd_ehci_base = (ULONG *) hcd -> ux_hcd_io; in _ux_hcd_ehci_initialize()
159 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCCR_CAP_LENGTH); in _ux_hcd_ehci_initialize()
160 hcd_ehci -> ux_hcd_ehci_hcor = (ehci_register & 0xff) >> 2; in _ux_hcd_ehci_initialize()
[all …]
Dux_hcd_ehci_entry.c98 UX_HCD_EHCI *hcd_ehci; in _ux_hcd_ehci_entry() local
115 hcd_ehci = (UX_HCD_EHCI *) hcd -> ux_hcd_controller_hardware; in _ux_hcd_ehci_entry()
123 status = _ux_hcd_ehci_controller_disable(hcd_ehci); in _ux_hcd_ehci_entry()
128 status = _ux_hcd_ehci_port_status_get(hcd_ehci, (ULONG) parameter); in _ux_hcd_ehci_entry()
140 status = _ux_hcd_ehci_port_disable(hcd_ehci, (ULONG) parameter); in _ux_hcd_ehci_entry()
146 status = _ux_hcd_ehci_power_on_port(hcd_ehci, (ULONG) parameter); in _ux_hcd_ehci_entry()
152 status = _ux_hcd_ehci_power_down_port(hcd_ehci, (ULONG) parameter); in _ux_hcd_ehci_entry()
157 status = _ux_hcd_ehci_port_suspend(hcd_ehci, (ULONG) parameter); in _ux_hcd_ehci_entry()
163 status = _ux_hcd_ehci_port_resume(hcd_ehci, (UINT) parameter); in _ux_hcd_ehci_entry()
169 status = _ux_hcd_ehci_port_reset(hcd_ehci, (ULONG) parameter); in _ux_hcd_ehci_entry()
[all …]
Dux_hcd_ehci_port_reset.c42 #define UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, on_off) do \ argument
67 #define UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, on_off) do \ argument
70 if ((ULONG)hcd_ehci -> ux_hcd_ehci_base == UX_EHCI_BASE1) \
81 #define UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, on_off) argument
132 UINT _ux_hcd_ehci_port_reset(UX_HCD_EHCI *hcd_ehci, ULONG port_index) in _ux_hcd_ehci_port_reset() argument
140 if (hcd_ehci -> ux_hcd_ehci_nb_root_hubs < port_index) in _ux_hcd_ehci_port_reset()
154 … ehci_register_port_status = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_PORT_SC + port_index); in _ux_hcd_ehci_port_reset()
171 …if ((ehci_register_port_status & EHCI_HC_PS_SPEED_MASK) != EHCI_HC_PS_SPEED_LOW || (hcd_ehci -> ux… in _ux_hcd_ehci_port_reset()
178 UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, UX_FALSE); in _ux_hcd_ehci_port_reset()
182 …_ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_PORT_SC + port_index, (ehci_register_port_status |… in _ux_hcd_ehci_port_reset()
[all …]
Dux_hcd_ehci_done_queue_process.c87 VOID _ux_hcd_ehci_done_queue_process(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_done_queue_process() argument
99 _ux_host_mutex_on(&hcd_ehci -> ux_hcd_ehci_periodic_mutex); in _ux_hcd_ehci_done_queue_process()
100 lp.itd_ptr = hcd_ehci -> ux_hcd_ehci_hsiso_scan_list; in _ux_hcd_ehci_done_queue_process()
105 lp.itd_ptr = _ux_hcd_ehci_hsisochronous_tds_process(hcd_ehci, lp.itd_ptr); in _ux_hcd_ehci_done_queue_process()
107 _ux_host_mutex_off(&hcd_ehci -> ux_hcd_ehci_periodic_mutex); in _ux_hcd_ehci_done_queue_process()
112 _ux_host_mutex_on(&hcd_ehci -> ux_hcd_ehci_periodic_mutex); in _ux_hcd_ehci_done_queue_process()
113 lp.sitd_ptr = hcd_ehci -> ux_hcd_ehci_fsiso_scan_list; in _ux_hcd_ehci_done_queue_process()
118 lp.sitd_ptr = _ux_hcd_ehci_fsisochronous_tds_process(hcd_ehci, lp.sitd_ptr); in _ux_hcd_ehci_done_queue_process()
120 _ux_host_mutex_off(&hcd_ehci -> ux_hcd_ehci_periodic_mutex); in _ux_hcd_ehci_done_queue_process()
126 _ux_host_mutex_on(&hcd_ehci -> ux_hcd_ehci_periodic_mutex); in _ux_hcd_ehci_done_queue_process()
[all …]
Dux_hcd_ehci_door_bell_wait.c80 VOID _ux_hcd_ehci_door_bell_wait(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_door_bell_wait() argument
88 status = _ux_host_semaphore_get(&hcd_ehci -> ux_hcd_ehci_protect_semaphore, UX_WAIT_FOREVER); in _ux_hcd_ehci_door_bell_wait()
93 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_USB_COMMAND); in _ux_hcd_ehci_door_bell_wait()
95 _ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_USB_COMMAND, ehci_register); in _ux_hcd_ehci_door_bell_wait()
98 _ux_host_semaphore_get_norc(&hcd_ehci -> ux_hcd_ehci_doorbell_semaphore, UX_WAIT_FOREVER); in _ux_hcd_ehci_door_bell_wait()
101 _ux_host_semaphore_put(&hcd_ehci -> ux_hcd_ehci_protect_semaphore); in _ux_hcd_ehci_door_bell_wait()
Dux_hcd_ehci_interrupt_handler.c92 UX_HCD_EHCI *hcd_ehci; in _ux_hcd_ehci_interrupt_handler() local
110 hcd_ehci = (UX_HCD_EHCI *) hcd -> ux_hcd_controller_hardware; in _ux_hcd_ehci_interrupt_handler()
117 hcd_ehci -> ux_hcd_ehci_interrupt_count++; in _ux_hcd_ehci_interrupt_handler()
120 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_USB_STATUS); in _ux_hcd_ehci_interrupt_handler()
124 _ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_USB_STATUS, ehci_register); in _ux_hcd_ehci_interrupt_handler()
141 _ux_hcd_ehci_controller_disable(hcd_ehci); in _ux_hcd_ehci_interrupt_handler()
156 … for (port_index = 0; port_index < hcd_ehci -> ux_hcd_ehci_nb_root_hubs; port_index++) in _ux_hcd_ehci_interrupt_handler()
160 … ehci_register_port_status = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_PORT_SC + port_index); in _ux_hcd_ehci_interrupt_handler()
188 _ux_host_semaphore_put(&hcd_ehci -> ux_hcd_ehci_doorbell_semaphore); in _ux_hcd_ehci_interrupt_handler()
Dux_hcd_ehci_power_root_hubs.c75 VOID _ux_hcd_ehci_power_root_hubs(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_power_root_hubs() argument
84 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCCR_HCS_PARAMS); in _ux_hcd_ehci_power_root_hubs()
90 for (port_index = 0; port_index < hcd_ehci -> ux_hcd_ehci_nb_root_hubs; port_index++) in _ux_hcd_ehci_power_root_hubs()
94 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_PORT_SC + port_index); in _ux_hcd_ehci_power_root_hubs()
97 …_ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_PORT_SC + port_index, ehci_register | EHCI_HC_PS_P… in _ux_hcd_ehci_power_root_hubs()
Dux_hcd_ehci_controller_disable.c78 UINT _ux_hcd_ehci_controller_disable(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_controller_disable() argument
86 hcd = hcd_ehci -> ux_hcd_ehci_hcd_owner; in _ux_hcd_ehci_controller_disable()
89 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_USB_COMMAND); in _ux_hcd_ehci_controller_disable()
92 _ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_USB_COMMAND, ehci_register); in _ux_hcd_ehci_controller_disable()
99 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCCR_HCS_PARAMS); in _ux_hcd_ehci_controller_disable()
Dux_hcd_ehci_request_transfer.c82 UINT _ux_hcd_ehci_request_transfer(UX_HCD_EHCI *hcd_ehci, UX_TRANSFER *transfer_request) in _ux_hcd_ehci_request_transfer() argument
101 status = _ux_hcd_ehci_request_control_transfer(hcd_ehci, transfer_request); in _ux_hcd_ehci_request_transfer()
107 status = _ux_hcd_ehci_request_bulk_transfer(hcd_ehci, transfer_request); in _ux_hcd_ehci_request_transfer()
113 status = _ux_hcd_ehci_request_interrupt_transfer(hcd_ehci, transfer_request); in _ux_hcd_ehci_request_transfer()
119 status = _ux_hcd_ehci_request_isochronous_transfer(hcd_ehci, transfer_request); in _ux_hcd_ehci_request_transfer()
Dux_hcd_ehci_periodic_tree_create.c77 UINT _ux_hcd_ehci_periodic_tree_create(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_periodic_tree_create() argument
101 ed = _ux_hcd_ehci_ed_obtain(hcd_ehci); in _ux_hcd_ehci_periodic_tree_create()
152 if (hcd_ehci -> ux_hcd_ehci_frame_list_size == 0) in _ux_hcd_ehci_periodic_tree_create()
155 hcd_ehci -> ux_hcd_ehci_frame_list_size = UX_EHCI_FRAME_LIST_ENTRIES; in _ux_hcd_ehci_periodic_tree_create()
165 …*(hcd_ehci -> ux_hcd_ehci_frame_list+current_list_entry) = (UX_EHCI_ED *) _ux_utility_physical_ad… in _ux_hcd_ehci_periodic_tree_create()
172 lp.ed_ptr = hcd_ehci -> ux_hcd_ehci_frame_list[current_list_entry]; in _ux_hcd_ehci_periodic_tree_create()
174 hcd_ehci -> ux_hcd_ehci_frame_list[current_list_entry] = lp.ed_ptr; in _ux_hcd_ehci_periodic_tree_create()
179 …for (current_list_entry = 32; current_list_entry < hcd_ehci -> ux_hcd_ehci_frame_list_size; curren… in _ux_hcd_ehci_periodic_tree_create()
180hcd_ehci -> ux_hcd_ehci_frame_list[current_list_entry] = hcd_ehci -> ux_hcd_ehci_frame_list[curre… in _ux_hcd_ehci_periodic_tree_create()
Dux_hcd_ehci_port_status_get.c42 #define UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, on_off) do \ argument
67 #define UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, on_off) do \ argument
70 if ((ULONG)hcd_ehci -> ux_hcd_ehci_base == UX_EHCI_BASE1) \
81 #define UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, on_off) argument
155 ULONG _ux_hcd_ehci_port_status_get(UX_HCD_EHCI *hcd_ehci, ULONG port_index) in _ux_hcd_ehci_port_status_get() argument
163 if (hcd_ehci -> ux_hcd_ehci_nb_root_hubs < port_index) in _ux_hcd_ehci_port_status_get()
178 … ehci_register_port_status = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_PORT_SC + port_index); in _ux_hcd_ehci_port_status_get()
187 UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, UX_FALSE); in _ux_hcd_ehci_port_status_get()
200 UX_HCD_EHCI_EXT_USBPHY_HIGHSPEED_MODE_SET(hcd_ehci, UX_FALSE); in _ux_hcd_ehci_port_status_get()
222 if (hcd_ehci -> ux_hcd_ehci_embedded_tt == UX_TRUE) in _ux_hcd_ehci_port_status_get()
Dux_hcd_ehci_port_disable.c75 UINT _ux_hcd_ehci_port_disable(UX_HCD_EHCI *hcd_ehci, ULONG port_index) in _ux_hcd_ehci_port_disable() argument
82 if (hcd_ehci -> ux_hcd_ehci_nb_root_hubs < port_index) in _ux_hcd_ehci_port_disable()
95 … ehci_register_port_status = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_PORT_SC + port_index); in _ux_hcd_ehci_port_disable()
101 … _ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_PORT_SC + port_index, ehci_register_port_status); in _ux_hcd_ehci_port_disable()
Dux_hcd_ehci_port_suspend.c74 UINT _ux_hcd_ehci_port_suspend(UX_HCD_EHCI *hcd_ehci, ULONG port_index) in _ux_hcd_ehci_port_suspend() argument
79 if (hcd_ehci -> ux_hcd_ehci_nb_root_hubs < port_index) in _ux_hcd_ehci_port_suspend()
92 … ehci_register_port_status = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_PORT_SC + port_index); in _ux_hcd_ehci_port_suspend()
104 … _ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_PORT_SC + port_index, ehci_register_port_status); in _ux_hcd_ehci_port_suspend()
Dux_hcd_ehci_frame_number_set.c75 VOID _ux_hcd_ehci_frame_number_set(UX_HCD_EHCI *hcd_ehci, ULONG frame_number) in _ux_hcd_ehci_frame_number_set() argument
83 ehci_register = _ux_hcd_ehci_register_read(hcd_ehci, EHCI_HCOR_USB_COMMAND); in _ux_hcd_ehci_frame_number_set()
92 _ux_hcd_ehci_register_write(hcd_ehci, EHCI_HCOR_FRAME_INDEX, ehci_register); in _ux_hcd_ehci_frame_number_set()
Dux_hcd_ehci_asynchronous_endpoint_create.c80 UINT _ux_hcd_ehci_asynchronous_endpoint_create(UX_HCD_EHCI *hcd_ehci, UX_ENDPOINT *endpoint) in _ux_hcd_ehci_asynchronous_endpoint_create() argument
94 ed = _ux_hcd_ehci_ed_obtain(hcd_ehci); in _ux_hcd_ehci_asynchronous_endpoint_create()
161 queue_head.void_ptr = _ux_utility_physical_address(hcd_ehci -> ux_hcd_ehci_asynch_first_list); in _ux_hcd_ehci_asynchronous_endpoint_create()
164 ed -> ux_ehci_ed_next_ed = hcd_ehci -> ux_hcd_ehci_asynch_first_list; in _ux_hcd_ehci_asynchronous_endpoint_create()
169 hcd_ehci -> ux_hcd_ehci_asynch_last_list -> ux_ehci_ed_queue_head = queue_head.ed_ptr; in _ux_hcd_ehci_asynchronous_endpoint_create()
170 ed -> ux_ehci_ed_previous_ed = hcd_ehci -> ux_hcd_ehci_asynch_last_list; in _ux_hcd_ehci_asynchronous_endpoint_create()
176 hcd_ehci -> ux_hcd_ehci_asynch_last_list = ed; in _ux_hcd_ehci_asynchronous_endpoint_create()
Dux_hcd_ehci_asynchronous_endpoint_destroy.c75 UINT _ux_hcd_ehci_asynchronous_endpoint_destroy(UX_HCD_EHCI *hcd_ehci, UX_ENDPOINT *endpoint) in _ux_hcd_ehci_asynchronous_endpoint_destroy() argument
105 if (hcd_ehci -> ux_hcd_ehci_asynch_last_list == ed) in _ux_hcd_ehci_asynchronous_endpoint_destroy()
106 hcd_ehci -> ux_hcd_ehci_asynch_last_list = previous_ed; in _ux_hcd_ehci_asynchronous_endpoint_destroy()
109 _ux_hcd_ehci_door_bell_wait(hcd_ehci); in _ux_hcd_ehci_asynchronous_endpoint_destroy()
Dux_hcd_ehci_hsisochronous_td_obtain.c75 UX_EHCI_HSISO_TD *_ux_hcd_ehci_hsisochronous_td_obtain(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_hsisochronous_td_obtain() argument
80 UX_PARAMETER_NOT_USED(hcd_ehci); in _ux_hcd_ehci_hsisochronous_td_obtain()
89 td = hcd_ehci -> ux_hcd_ehci_hsiso_td_list; in _ux_hcd_ehci_hsisochronous_td_obtain()
Dux_hcd_ehci_register_read.c74 ULONG _ux_hcd_ehci_register_read(UX_HCD_EHCI *hcd_ehci, ULONG ehci_register) in _ux_hcd_ehci_register_read() argument
78 return(*(hcd_ehci -> ux_hcd_ehci_base + ehci_register)); in _ux_hcd_ehci_register_read()
Dux_hcd_ehci_fsisochronous_td_obtain.c75 UX_EHCI_FSISO_TD *_ux_hcd_ehci_fsisochronous_td_obtain(UX_HCD_EHCI *hcd_ehci) in _ux_hcd_ehci_fsisochronous_td_obtain() argument
80 UX_PARAMETER_NOT_USED(hcd_ehci); in _ux_hcd_ehci_fsisochronous_td_obtain()
89 td = hcd_ehci -> ux_hcd_ehci_fsiso_td_list; in _ux_hcd_ehci_fsisochronous_td_obtain()
Dux_hcd_ehci_fsisochronous_tds_process.c82 UX_HCD_EHCI *hcd_ehci, in _ux_hcd_ehci_fsisochronous_tds_process() argument
86 UX_PARAMETER_NOT_USED(hcd_ehci); in _ux_hcd_ehci_fsisochronous_tds_process()
Dux_hcd_ehci_power_on_port.c73 UINT _ux_hcd_ehci_power_on_port(UX_HCD_EHCI *hcd_ehci, ULONG port_index) in _ux_hcd_ehci_power_on_port() argument
76 UX_PARAMETER_NOT_USED(hcd_ehci); in _ux_hcd_ehci_power_on_port()
Dux_hcd_ehci_port_resume.c73 UINT _ux_hcd_ehci_port_resume(UX_HCD_EHCI *hcd_ehci, UINT port_index) in _ux_hcd_ehci_port_resume() argument
76 UX_PARAMETER_NOT_USED(hcd_ehci); in _ux_hcd_ehci_port_resume()
Dux_hcd_ehci_power_down_port.c74 UINT _ux_hcd_ehci_power_down_port(UX_HCD_EHCI *hcd_ehci, ULONG port_index) in _ux_hcd_ehci_power_down_port() argument
77 UX_PARAMETER_NOT_USED(hcd_ehci); in _ux_hcd_ehci_power_down_port()
Dux_hcd_ehci_register_write.c74 VOID _ux_hcd_ehci_register_write(UX_HCD_EHCI *hcd_ehci, ULONG ehci_register, ULONG value) in _ux_hcd_ehci_register_write() argument
78 *(hcd_ehci -> ux_hcd_ehci_base + ehci_register) = value; in _ux_hcd_ehci_register_write()
/USBX-v6.2.1/common/usbx_host_controllers/inc/
Dux_hcd_ehci.h105 #define EHCI_HCOR_USB_COMMAND (hcd_ehci -> ux_hcd_ehci_hcor + 0x00)
106 #define EHCI_HCOR_USB_STATUS (hcd_ehci -> ux_hcd_ehci_hcor + 0x01)
107 #define EHCI_HCOR_USB_INTERRUPT (hcd_ehci -> ux_hcd_ehci_hcor + 0x02)
108 #define EHCI_HCOR_FRAME_INDEX (hcd_ehci -> ux_hcd_ehci_hcor + 0x03)
109 #define EHCI_HCOR_FRAME_LIST_BASE_ADDRESS (hcd_ehci -> ux_hcd_ehci_hcor + 0x05)
110 #define EHCI_HCOR_ASYNCH_LIST_ADDRESS (hcd_ehci -> ux_hcd_ehci_hcor + 0x06)
111 #define EHCI_HCOR_CONFIG_FLAG (hcd_ehci -> ux_hcd_ehci_hcor + 0x10)
112 #define EHCI_HCOR_PORT_SC (hcd_ehci -> ux_hcd_ehci_hcor + 0x11)
796 UX_EHCI_HSISO_TD *_ux_hcd_ehci_hsisochronous_tds_process(UX_HCD_EHCI *hcd_ehci, UX_EHCI_HSISO_TD…
797 UX_EHCI_FSISO_TD *_ux_hcd_ehci_fsisochronous_tds_process(UX_HCD_EHCI *hcd_ehci, UX_EHCI_FSISO_TD…
[all …]

12