PERFORCE change 145840 for review
Hans Petter Selasky
hselasky at FreeBSD.org
Thu Jul 24 19:59:59 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=145840
Change 145840 by hselasky at hselasky_laptop001 on 2008/07/24 19:59:25
Revise the need for sync to increase performance.
Affected files ...
.. //depot/projects/usb/src/sys/dev/usb2/controller/at91dci.c#5 edit
.. //depot/projects/usb/src/sys/dev/usb2/controller/uss820dci.c#4 edit
Differences ...
==== //depot/projects/usb/src/sys/dev/usb2/controller/at91dci.c#5 (text+ko) ====
@@ -910,7 +910,6 @@
struct at91dci_softc *sc;
struct at91dci_td *td;
uint32_t x;
- uint8_t need_sync;
uint8_t ep_no;
DPRINTF(8, "addr=%d endpt=%d sumlen=%d speed=%d\n",
@@ -953,18 +952,13 @@
if (x != xfer->nframes) {
if (xfer->endpoint & UE_DIR_IN) {
temp.func = &at91dci_data_tx;
- need_sync = 1;
} else {
temp.func = &at91dci_data_rx;
- need_sync = 0;
}
/* setup "pc" pointer */
temp.pc = xfer->frbuffers + x;
- } else {
- need_sync = 0;
}
-
while (x != xfer->nframes) {
/* DATA0 / DATA1 message */
@@ -1002,20 +996,11 @@
/* always setup a valid "pc" pointer for status and sync */
temp.pc = xfer->frbuffers + 0;
- /* check if we need to sync */
- if (need_sync && !xfer->flags_int.isochronous_xfr) {
-
- /* we need a SYNC point after TX */
- temp.func = &at91dci_data_tx_sync;
- temp.len = 0;
- temp.short_pkt = 0;
-
- at91dci_setup_standard_chain_sub(&temp);
- }
/* check if we should append a status stage */
if (xfer->flags_int.control_xfr &&
!xfer->flags_int.control_act) {
+ uint8_t need_sync;
/*
* Send a DATA1 message and invert the current
==== //depot/projects/usb/src/sys/dev/usb2/controller/uss820dci.c#4 (text+ko) ====
@@ -857,7 +857,6 @@
struct uss820dci_softc *sc;
struct uss820dci_td *td;
uint32_t x;
- uint8_t need_sync;
uint8_t ep_no;
DPRINTF(8, "addr=%d endpt=%d sumlen=%d speed=%d\n",
@@ -900,18 +899,13 @@
if (x != xfer->nframes) {
if (xfer->endpoint & UE_DIR_IN) {
temp.func = &uss820dci_data_tx;
- need_sync = 1;
} else {
temp.func = &uss820dci_data_rx;
- need_sync = 0;
}
/* setup "pc" pointer */
temp.pc = xfer->frbuffers + x;
- } else {
- need_sync = 0;
}
-
while (x != xfer->nframes) {
/* DATA0 / DATA1 message */
@@ -949,20 +943,11 @@
/* always setup a valid "pc" pointer for status and sync */
temp.pc = xfer->frbuffers + 0;
- /* check if we need to sync */
- if (need_sync && !xfer->flags_int.isochronous_xfr) {
-
- /* we need a SYNC point after TX */
- temp.func = &uss820dci_data_tx_sync;
- temp.len = 0;
- temp.short_pkt = 0;
-
- uss820dci_setup_standard_chain_sub(&temp);
- }
/* check if we should append a status stage */
if (xfer->flags_int.control_xfr &&
!xfer->flags_int.control_act) {
+ uint8_t need_sync;
/*
* Send a DATA1 message and invert the current
More information about the p4-projects
mailing list