]> git.openfabrics.org - ~shefty/rdma-dev.git/commitdiff
usb: host: tegra: code clean up
authorVenu Byravarasu <vbyravarasu@nvidia.com>
Thu, 5 Apr 2012 05:55:30 +0000 (11:25 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Apr 2012 20:46:41 +0000 (13:46 -0700)
With this patch:
1. Renamed structure and function names to be more meaningful.
2. Removed unnecessary local variables.

Signed-off-by: Venu Byravarasu <vbyravarasu@nvidia.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/ehci-tegra.c

index 3de48a2d79550df7b9af8efe0132ff73e2535fdd..3197f8a55f21a07901a50da4cea796151da3cafa 100644 (file)
@@ -462,26 +462,23 @@ static int tegra_ehci_bus_resume(struct usb_hcd *hcd)
 }
 #endif
 
-struct temp_buffer {
+struct dma_aligned_buffer {
        void *kmalloc_ptr;
        void *old_xfer_buffer;
        u8 data[0];
 };
 
-static void free_temp_buffer(struct urb *urb)
+static void free_dma_aligned_buffer(struct urb *urb)
 {
-       enum dma_data_direction dir;
-       struct temp_buffer *temp;
+       struct dma_aligned_buffer *temp;
 
        if (!(urb->transfer_flags & URB_ALIGNED_TEMP_BUFFER))
                return;
 
-       dir = usb_urb_dir_in(urb) ? DMA_FROM_DEVICE : DMA_TO_DEVICE;
+       temp = container_of(urb->transfer_buffer,
+               struct dma_aligned_buffer, data);
 
-       temp = container_of(urb->transfer_buffer, struct temp_buffer,
-                           data);
-
-       if (dir == DMA_FROM_DEVICE)
+       if (usb_urb_dir_in(urb))
                memcpy(temp->old_xfer_buffer, temp->data,
                       urb->transfer_buffer_length);
        urb->transfer_buffer = temp->old_xfer_buffer;
@@ -490,10 +487,9 @@ static void free_temp_buffer(struct urb *urb)
        urb->transfer_flags &= ~URB_ALIGNED_TEMP_BUFFER;
 }
 
-static int alloc_temp_buffer(struct urb *urb, gfp_t mem_flags)
+static int alloc_dma_aligned_buffer(struct urb *urb, gfp_t mem_flags)
 {
-       enum dma_data_direction dir;
-       struct temp_buffer *temp, *kmalloc_ptr;
+       struct dma_aligned_buffer *temp, *kmalloc_ptr;
        size_t kmalloc_size;
 
        if (urb->num_sgs || urb->sg ||
@@ -501,22 +497,19 @@ static int alloc_temp_buffer(struct urb *urb, gfp_t mem_flags)
            !((uintptr_t)urb->transfer_buffer & (TEGRA_USB_DMA_ALIGN - 1)))
                return 0;
 
-       dir = usb_urb_dir_in(urb) ? DMA_FROM_DEVICE : DMA_TO_DEVICE;
-
        /* Allocate a buffer with enough padding for alignment */
        kmalloc_size = urb->transfer_buffer_length +
-               sizeof(struct temp_buffer) + TEGRA_USB_DMA_ALIGN - 1;
+               sizeof(struct dma_aligned_buffer) + TEGRA_USB_DMA_ALIGN - 1;
 
        kmalloc_ptr = kmalloc(kmalloc_size, mem_flags);
        if (!kmalloc_ptr)
                return -ENOMEM;
 
-       /* Position our struct temp_buffer such that data is aligned */
+       /* Position our struct dma_aligned_buffer such that data is aligned */
        temp = PTR_ALIGN(kmalloc_ptr + 1, TEGRA_USB_DMA_ALIGN) - 1;
-
        temp->kmalloc_ptr = kmalloc_ptr;
        temp->old_xfer_buffer = urb->transfer_buffer;
-       if (dir == DMA_TO_DEVICE)
+       if (usb_urb_dir_out(urb))
                memcpy(temp->data, urb->transfer_buffer,
                       urb->transfer_buffer_length);
        urb->transfer_buffer = temp->data;
@@ -531,13 +524,13 @@ static int tegra_ehci_map_urb_for_dma(struct usb_hcd *hcd, struct urb *urb,
 {
        int ret;
 
-       ret = alloc_temp_buffer(urb, mem_flags);
+       ret = alloc_dma_aligned_buffer(urb, mem_flags);
        if (ret)
                return ret;
 
        ret = usb_hcd_map_urb_for_dma(hcd, urb, mem_flags);
        if (ret)
-               free_temp_buffer(urb);
+               free_dma_aligned_buffer(urb);
 
        return ret;
 }
@@ -545,7 +538,7 @@ static int tegra_ehci_map_urb_for_dma(struct usb_hcd *hcd, struct urb *urb,
 static void tegra_ehci_unmap_urb_for_dma(struct usb_hcd *hcd, struct urb *urb)
 {
        usb_hcd_unmap_urb_for_dma(hcd, urb);
-       free_temp_buffer(urb);
+       free_dma_aligned_buffer(urb);
 }
 
 static const struct hc_driver tegra_ehci_hc_driver = {