PERFORCE change 113575 for review

Hans Petter Selasky hselasky at FreeBSD.org
Fri Jan 26 20:37:15 UTC 2007


http://perforce.freebsd.org/chv.cgi?CH=113575

Change 113575 by hselasky at hselasky_mini_itx on 2007/01/26 20:36:33

	Optimize use of "td_token" in "uhci_setup_standard_chain()".

Affected files ...

.. //depot/projects/usb/src/sys/dev/usb/uhci.c#20 edit

Differences ...

==== //depot/projects/usb/src/sys/dev/usb/uhci.c#20 (text+ko) ====

@@ -1407,13 +1407,13 @@
 		usbd_page_dma_exit(td->page);
 
 		td->td_status = td_status & htole32(~UHCI_TD_SPD);
-		td->td_token = 
-		  htole32(UHCI_TD_SET_ENDPT(xfer->endpoint)) |
-		  htole32(UHCI_TD_SET_DEVADDR(xfer->address)) |
-		  htole32(UHCI_TD_SET_MAXLEN(sizeof(usb_device_request_t))) |
-		  htole32(UHCI_TD_PID_SETUP)|
-		  htole32(UHCI_TD_SET_DT(0));
-
+		td_token = 
+		  (UHCI_TD_SET_ENDPT(xfer->endpoint) |
+		   UHCI_TD_SET_DEVADDR(xfer->address) |
+		   UHCI_TD_SET_MAXLEN(sizeof(usb_device_request_t)) |
+		   UHCI_TD_PID_SETUP|
+		   UHCI_TD_SET_DT(0));
+		td->td_token = htole32(td_token);
 		td->td_buffer = htole32(buf_res.physaddr);
 
 		buf_offset += sizeof(usb_device_request_t);
@@ -1444,14 +1444,14 @@
 	}
 
 	td_token =
-	  htole32(UHCI_TD_SET_ENDPT(xfer->endpoint)) |
-	  htole32(UHCI_TD_SET_DEVADDR(xfer->address)) |
-	  htole32(UHCI_TD_SET_MAXLEN(average)) |
-	  (isread ? htole32(UHCI_TD_PID_IN) : htole32(UHCI_TD_PID_OUT));
+	  (UHCI_TD_SET_ENDPT(xfer->endpoint) |
+	   UHCI_TD_SET_DEVADDR(xfer->address) |
+	   UHCI_TD_SET_MAXLEN(average) |
+	   (isread ? UHCI_TD_PID_IN : UHCI_TD_PID_OUT));
 
 	if(xfer->pipe->toggle_next)
 	{
-		td_token |= htole32(UHCI_TD_SET_DT(1));
+		td_token |= UHCI_TD_SET_DT(1);
 	}
 
 	while(1)
@@ -1476,8 +1476,8 @@
 			average = len;
 
 			/* update length */
-			td_token &= htole32(~(0x7ff<<21));
-			td_token |= htole32(UHCI_TD_SET_MAXLEN(average));
+			td_token &= ~(0x7ff << 21);
+			td_token |= UHCI_TD_SET_MAXLEN(average);
 		}
 
 		if(td == NULL)
@@ -1491,10 +1491,10 @@
 		/* fill out current TD */
        
 		td->td_status = td_status;
-		td->td_token = td_token;
+		td->td_token = htole32(td_token);
 		td->td_buffer = htole32(buf_res.physaddr);
 
-		td_token ^= htole32(UHCI_TD_SET_DT(1));
+		td_token ^= UHCI_TD_SET_DT(1);
 
 		buf_offset += average;
 		usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res);
@@ -1518,13 +1518,13 @@
 		/* STATUS message */
 
 		/* update length and PID */
-		td_token &= htole32(~(0x7ff<<21));
-		td_token |= htole32(UHCI_TD_SET_MAXLEN(0)|UHCI_TD_SET_DT(1));
-		td_token ^= htole32(0x88);
+		td_token &= ~(0x7ff << 21);
+		td_token |= (UHCI_TD_SET_MAXLEN(0)|UHCI_TD_SET_DT(1));
+		td_token ^= 0x00000088;
 
 		usbd_page_dma_exit(td->page);
 
-		td->td_token = td_token;
+		td->td_token = htole32(td_token);
 		td->td_buffer = htole32(0);
 
 		td_last = td;
@@ -1544,12 +1544,9 @@
 	xfer->td_transfer_last = td_last;
 
 	/* store data-toggle */
-	if(td_token & htole32(UHCI_TD_SET_DT(1)))
-	{
+	if (td_token & UHCI_TD_SET_DT(1)) {
 		xfer->pipe->toggle_next = 1;
-	}
-	else
-	{
+	} else {
 		xfer->pipe->toggle_next = 0;
 	}
 


More information about the p4-projects mailing list