History

USB: rename usb_buffer_alloc() and usb_buffer_free()

For more clearance what the functions actually do, usb_buffer_alloc() is renamed to usb_alloc_coherent() usb_buffer_free() is renamed to usb_free_coherent() They should only be used in code which really needs DMA coherency. [added compatibility macros so we can convert things easier - gregkh]

Daniel Mack committed 16 years ago

Commit 073900a1 parent 75181f32 files · +25 −13Browse files

Unified · Split

2 files
  1. drivers/usb/core/usb.c +10 −10
  2. include/linux/usb.h +15 −3
drivers/usb/core/usb.c+10−10
@@ -718,7 +718,7 @@ int __usb_get_extra_descriptor(char *buffer, unsigned size, · 717 unmodified lines
718718 EXPORT_SYMBOL_GPL(__usb_get_extra_descriptor);
719719
720720 /**
721− * usb_buffer_alloc - allocate dma-consistent buffer for URB_NO_xxx_DMA_MAP
721+ * usb_alloc_coherent - allocate dma-consistent buffer for URB_NO_xxx_DMA_MAP
722722 * @dev: device the buffer will be used with
723723 * @size: requested buffer size
724724 * @mem_flags: affect whether allocation may block
@@ -737,30 +737,30 @@ EXPORT_SYMBOL_GPL(__usb_get_extra_descriptor); · 12 unmodified lines
737737 * architectures where CPU caches are not DMA-coherent. On systems without
738738 * bus-snooping caches, these buffers are uncached.
739739 *
740− * When the buffer is no longer used, free it with usb_buffer_free().
740+ * When the buffer is no longer used, free it with usb_free_coherent().
741741 */
742−void *usb_buffer_alloc(struct usb_device *dev, size_t size, gfp_t mem_flags,
743− dma_addr_t *dma)
742+void *usb_alloc_coherent(struct usb_device *dev, size_t size, gfp_t mem_flags,
743+ dma_addr_t *dma)
744744 {
745745 if (!dev || !dev->bus)
746746 return NULL;
747747 return hcd_buffer_alloc(dev->bus, size, mem_flags, dma);
748748 }
749−EXPORT_SYMBOL_GPL(usb_buffer_alloc);
749+EXPORT_SYMBOL_GPL(usb_alloc_coherent);
750750
751751 /**
752− * usb_buffer_free - free memory allocated with usb_buffer_alloc()
752+ * usb_free_coherent - free memory allocated with usb_alloc_coherent()
753753 * @dev: device the buffer was used with
754754 * @size: requested buffer size
755755 * @addr: CPU address of buffer
756756 * @dma: DMA address of buffer
757757 *
758758 * This reclaims an I/O buffer, letting it be reused. The memory must have
759− * been allocated using usb_buffer_alloc(), and the parameters must match
759+ * been allocated using usb_alloc_coherent(), and the parameters must match
760760 * those provided in that allocation request.
761761 */
762−void usb_buffer_free(struct usb_device *dev, size_t size, void *addr,
763− dma_addr_t dma)
762+void usb_free_coherent(struct usb_device *dev, size_t size, void *addr,
763+ dma_addr_t dma)
764764 {
765765 if (!dev || !dev->bus)
766766 return;
@@ -768,7 +768,7 @@ void usb_buffer_free(struct usb_device *dev, size_t size, void *addr, · 1 unmodified line
768768 return;
769769 hcd_buffer_free(dev->bus, size, addr, dma);
770770 }
771−EXPORT_SYMBOL_GPL(usb_buffer_free);
771+EXPORT_SYMBOL_GPL(usb_free_coherent);
772772
773773 /**
774774 * usb_buffer_map - create DMA mapping(s) for an urb
include/linux/usb.h+15−3
@@ -1085,7 +1085,7 @@ typedef void (*usb_complete_t)(struct urb *); · 1084 unmodified lines
10851085 * Alternatively, drivers may pass the URB_NO_xxx_DMA_MAP transfer flags,
10861086 * which tell the host controller driver that no such mapping is needed since
10871087 * the device driver is DMA-aware. For example, a device driver might
1088− * allocate a DMA buffer with usb_buffer_alloc() or call usb_buffer_map().
1088+ * allocate a DMA buffer with usb_alloc_coherent() or call usb_buffer_map().
10891089 * When these transfer flags are provided, host controller drivers will
10901090 * attempt to use the dma addresses found in the transfer_dma and/or
10911091 * setup_dma fields rather than determining a dma address themselves.
@@ -1366,11 +1366,23 @@ static inline int usb_urb_dir_out(struct urb *urb) · 274 unmodified lines
13661366 return (urb->transfer_flags & URB_DIR_MASK) == URB_DIR_OUT;
13671367 }
13681368
1369−void *usb_buffer_alloc(struct usb_device *dev, size_t size,
1369+void *usb_alloc_coherent(struct usb_device *dev, size_t size,
13701370 gfp_t mem_flags, dma_addr_t *dma);
1371−void usb_buffer_free(struct usb_device *dev, size_t size,
1371+void usb_free_coherent(struct usb_device *dev, size_t size,
13721372 void *addr, dma_addr_t dma);
13731373
1374+/* Compatible macros while we switch over */
1375+static inline void *usb_buffer_alloc(struct usb_device *dev, size_t size,
1376+ gfp_t mem_flags, dma_addr_t *dma)
1377+{
1378+ return usb_alloc_coherent(dev, size, mem_flags, dma);
1379+}
1380+static inline void usb_buffer_free(struct usb_device *dev, size_t size,
1381+ void *addr, dma_addr_t dma)
1382+{
1383+ return usb_free_coherent(dev, size, addr, dma);
1384+}
1385+
13741386 #if 0
13751387 struct urb *usb_buffer_map(struct urb *urb);
13761388 void usb_buffer_dmasync(struct urb *urb);