summaryrefslogtreecommitdiff
path: root/common/usbx_host_controllers
diff options
context:
space:
mode:
authorScott Larson <[email protected]>2020-08-14 10:45:58 -0700
committerScott Larson <[email protected]>2020-08-14 10:45:58 -0700
commit10ad1105ef70e8954e8beb684b409a5c8b5cedd1 (patch)
treeba9c570a0b61c30f55651a838311742c7483b901 /common/usbx_host_controllers
parent0ae68ff7d12bb4c359fa062ffd905f8cf4c58e24 (diff)
apply 6.0.2 patch and add additional architectures and toolchain supportv6.0.2_rel
Diffstat (limited to 'common/usbx_host_controllers')
-rw-r--r--common/usbx_host_controllers/src/ux_hcd_ohci_asynchronous_endpoint_destroy.c14
-rw-r--r--common/usbx_host_controllers/src/ux_hcd_ohci_interrupt_endpoint_create.c9
-rw-r--r--common/usbx_host_controllers/src/ux_hcd_ohci_next_td_clean.c12
-rw-r--r--common/usbx_host_controllers/src/ux_hcd_ohci_periodic_endpoint_destroy.c17
-rw-r--r--common/usbx_host_controllers/src/ux_hcd_ohci_transfer_abort.c13
5 files changed, 41 insertions, 24 deletions
diff --git a/common/usbx_host_controllers/src/ux_hcd_ohci_asynchronous_endpoint_destroy.c b/common/usbx_host_controllers/src/ux_hcd_ohci_asynchronous_endpoint_destroy.c
index fb2cee4..4c30840 100644
--- a/common/usbx_host_controllers/src/ux_hcd_ohci_asynchronous_endpoint_destroy.c
+++ b/common/usbx_host_controllers/src/ux_hcd_ohci_asynchronous_endpoint_destroy.c
@@ -35,7 +35,7 @@
/* FUNCTION RELEASE */
/* */
/* _ux_hcd_ohci_asynchronous_endpoint_destroy PORTABLE C */
-/* 6.0 */
+/* 6.0.2 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -70,6 +70,10 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 08-14-2020 Chaoqiong Xiao Modified comment(s), */
+/* fixed physical and virtual */
+/* address conversion, */
+/* resulting in version 6.0.2 */
/* */
/**************************************************************************/
UINT _ux_hcd_ohci_asynchronous_endpoint_destroy(UX_HCD_OHCI *hcd_ohci, UX_ENDPOINT *endpoint)
@@ -162,14 +166,10 @@ ULONG ohci_register;
if (next_ed != UX_NULL)
next_ed -> ux_ohci_ed_previous_ed = previous_ed;
- /* We use the tail TD as a pointer to the Dummy TD. */
- tail_td = (UX_OHCI_TD *) _ux_utility_virtual_address(ed -> ux_ohci_ed_tail_td);
-
/* Ensure that the potential Halt bit is removed in the head ED. */
value_td = (ULONG) _ux_utility_virtual_address(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_MASK_TD;
- head_td = (UX_OHCI_TD *) _ux_utility_physical_address((VOID *) value_td);
- ed -> ux_ohci_ed_head_td = head_td;
-
+ head_td = (UX_OHCI_TD *) value_td;
+
/* Remove all the tds from this ED and leave the head and tail pointing
to the dummy TD. */
tail_td = _ux_utility_virtual_address(ed -> ux_ohci_ed_tail_td);
diff --git a/common/usbx_host_controllers/src/ux_hcd_ohci_interrupt_endpoint_create.c b/common/usbx_host_controllers/src/ux_hcd_ohci_interrupt_endpoint_create.c
index 5ecf246..932925e 100644
--- a/common/usbx_host_controllers/src/ux_hcd_ohci_interrupt_endpoint_create.c
+++ b/common/usbx_host_controllers/src/ux_hcd_ohci_interrupt_endpoint_create.c
@@ -35,7 +35,7 @@
/* FUNCTION RELEASE */
/* */
/* _ux_hcd_ohci_interrupt_endpoint_create PORTABLE C */
-/* 6.0 */
+/* 6.0.2 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -87,6 +87,10 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 08-14-2020 Chaoqiong Xiao Modified comment(s), */
+/* fixed physical and virtual */
+/* address conversion, */
+/* resulting in version 6.0.2 */
/* */
/**************************************************************************/
UINT _ux_hcd_ohci_interrupt_endpoint_create(UX_HCD_OHCI *hcd_ohci, UX_ENDPOINT *endpoint)
@@ -199,7 +203,10 @@ UINT interval_ohci;
/* Check for end of tree which happens for devices with interval of 1. In this case
there might not be a next_ed. */
if (next_ed != UX_NULL)
+ {
+ next_ed = _ux_utility_virtual_address(next_ed);
next_ed -> ux_ohci_ed_previous_ed = ed;
+ }
ed -> ux_ohci_ed_next_ed = _ux_utility_physical_address(next_ed);
ed -> ux_ohci_ed_previous_ed = ed_list;
ed_list -> ux_ohci_ed_next_ed = _ux_utility_physical_address(ed);
diff --git a/common/usbx_host_controllers/src/ux_hcd_ohci_next_td_clean.c b/common/usbx_host_controllers/src/ux_hcd_ohci_next_td_clean.c
index dd185c0..b6b57e2 100644
--- a/common/usbx_host_controllers/src/ux_hcd_ohci_next_td_clean.c
+++ b/common/usbx_host_controllers/src/ux_hcd_ohci_next_td_clean.c
@@ -35,7 +35,7 @@
/* FUNCTION RELEASE */
/* */
/* _ux_hcd_ohci_next_td_clean PORTABLE C */
-/* 6.0 */
+/* 6.0.2 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -67,6 +67,10 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 08-14-2020 Chaoqiong Xiao Modified comment(s), */
+/* fixed physical and virtual */
+/* address conversion, */
+/* resulting in version 6.0.2 */
/* */
/**************************************************************************/
VOID _ux_hcd_ohci_next_td_clean(UX_OHCI_TD *td)
@@ -83,12 +87,12 @@ ULONG value_carry;
ed = td -> ux_ohci_td_ed;
/* Ensure that the potential Carry bit is maintained in the head ED. */
- value_carry = (ULONG) _ux_utility_virtual_address(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_TOGGLE_CARRY;
+ value_carry = (ULONG)(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_TOGGLE_CARRY;
/* Ensure that the potential Halt bit is removed in the head ED. */
value_td = (ULONG) _ux_utility_virtual_address(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_MASK_TD;
- head_td = (UX_OHCI_TD *) _ux_utility_physical_address((VOID *) value_td);
-
+ head_td = (UX_OHCI_TD *)value_td;
+
/* Remove all the tds from this ED and leave the head and tail pointing
to the dummy TD. */
tail_td = _ux_utility_virtual_address(ed -> ux_ohci_ed_tail_td);
diff --git a/common/usbx_host_controllers/src/ux_hcd_ohci_periodic_endpoint_destroy.c b/common/usbx_host_controllers/src/ux_hcd_ohci_periodic_endpoint_destroy.c
index f99fe04..9e70d63 100644
--- a/common/usbx_host_controllers/src/ux_hcd_ohci_periodic_endpoint_destroy.c
+++ b/common/usbx_host_controllers/src/ux_hcd_ohci_periodic_endpoint_destroy.c
@@ -35,7 +35,7 @@
/* FUNCTION RELEASE */
/* */
/* _ux_hcd_ohci_periodic_endpoint_destroy PORTABLE C */
-/* 6.0 */
+/* 6.0.2 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -66,6 +66,10 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 08-14-2020 Chaoqiong Xiao Modified comment(s), */
+/* fixed physical and virtual */
+/* address conversion, */
+/* resulting in version 6.0.2 */
/* */
/**************************************************************************/
UINT _ux_hcd_ohci_periodic_endpoint_destroy(UX_HCD_OHCI *hcd_ohci, UX_ENDPOINT *endpoint)
@@ -113,18 +117,17 @@ ULONG value_td;
/* There may not be any next endpoint. But if there is one, link it
to the previous ED. */
if (next_ed != UX_NULL)
+ {
/* Update the previous ED pointer in the next ED. */
+ next_ed = _ux_utility_virtual_address(next_ed);
next_ed -> ux_ohci_ed_previous_ed = previous_ed;
-
- /* We use the tail TD as a pointer to the Dummy TD. */
- tail_td = (UX_OHCI_TD *) _ux_utility_virtual_address(ed -> ux_ohci_ed_tail_td);
+ }
/* Ensure that the potential Halt bit is removed in the head ED. */
value_td = (ULONG) _ux_utility_virtual_address(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_MASK_TD;
- head_td = (UX_OHCI_TD *) _ux_utility_physical_address((VOID *) value_td);
- ed -> ux_ohci_ed_head_td = head_td;
-
+ head_td = (UX_OHCI_TD *)value_td;
+
/* Remove all the tds from this ED and leave the head and tail pointing
to the dummy TD. */
tail_td = _ux_utility_virtual_address(ed -> ux_ohci_ed_tail_td);
diff --git a/common/usbx_host_controllers/src/ux_hcd_ohci_transfer_abort.c b/common/usbx_host_controllers/src/ux_hcd_ohci_transfer_abort.c
index 61c7a9e..e76fb2f 100644
--- a/common/usbx_host_controllers/src/ux_hcd_ohci_transfer_abort.c
+++ b/common/usbx_host_controllers/src/ux_hcd_ohci_transfer_abort.c
@@ -35,7 +35,7 @@
/* FUNCTION RELEASE */
/* */
/* _ux_hcd_ohci_transfer_abort PORTABLE C */
-/* 6.0 */
+/* 6.0.2 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -69,6 +69,10 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 08-14-2020 Chaoqiong Xiao Modified comment(s), */
+/* fixed physical and virtual */
+/* address conversion, */
+/* resulting in version 6.0.2 */
/* */
/**************************************************************************/
UINT _ux_hcd_ohci_transfer_abort(UX_HCD_OHCI *hcd_ohci, UX_TRANSFER *transfer_request)
@@ -108,13 +112,12 @@ ULONG value_carry;
_ux_utility_delay_ms(1);
/* Ensure that the potential Carry bit is maintained in the head ED. */
- value_carry = (ULONG) _ux_utility_virtual_address(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_TOGGLE_CARRY;
+ value_carry = (ULONG)(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_TOGGLE_CARRY;
/* Ensure that the potential Halt bit is removed in the head ED. */
value_td = (ULONG) _ux_utility_virtual_address(ed -> ux_ohci_ed_head_td) & UX_OHCI_ED_MASK_TD;
- head_td = (UX_OHCI_TD *) _ux_utility_physical_address((VOID *) value_td);
- ed -> ux_ohci_ed_head_td = head_td;
-
+ head_td = (UX_OHCI_TD *)value_td;
+
/* Remove all the tds from this ED and leave the head and tail pointing
to the dummy TD. */
tail_td = _ux_utility_virtual_address(ed -> ux_ohci_ed_tail_td);