Index: uspace/lib/usbhost/include/usb/host/hcd.h
===================================================================
--- uspace/lib/usbhost/include/usb/host/hcd.h	(revision 4dfc905860c1e80378dde24f172dfa72c8133de8)
+++ uspace/lib/usbhost/include/usb/host/hcd.h	(revision 549ff23eeccbe3fe8e6eb34fffc58415a5e01252)
@@ -97,5 +97,5 @@
  * @return pointer cast to hcd_t*.
  */
-static inline hcd_t * fun_to_hcd(ddf_fun_t *fun)
+static inline hcd_t * fun_to_hcd(const ddf_fun_t *fun)
 {
 	assert(fun);
Index: uspace/lib/usbhost/include/usb/host/usb_transfer_batch.h
===================================================================
--- uspace/lib/usbhost/include/usb/host/usb_transfer_batch.h	(revision 4dfc905860c1e80378dde24f172dfa72c8133de8)
+++ uspace/lib/usbhost/include/usb/host/usb_transfer_batch.h	(revision 549ff23eeccbe3fe8e6eb34fffc58415a5e01252)
@@ -43,7 +43,6 @@
 #define USB_SETUP_PACKET_SIZE 8
 
-typedef struct usb_transfer_batch usb_transfer_batch_t;
 /** Structure stores additional data needed for communication with EP */
-struct usb_transfer_batch {
+typedef struct usb_transfer_batch {
 	/** Endpoint used for communication */
 	endpoint_t *ep;
@@ -77,5 +76,5 @@
 	/** Callback to properly remove driver data during destruction */
 	void (*private_data_dtor)(void *p_data);
-};
+} usb_transfer_batch_t;
 
 /** Printf formatting string for dumping usb_transfer_batch_t. */
@@ -93,5 +92,5 @@
 
 
-usb_transfer_batch_t * usb_transfer_batch_get(
+usb_transfer_batch_t * usb_transfer_batch_create(
     endpoint_t *ep,
     char *buffer,
@@ -105,36 +104,10 @@
     void (*private_data_dtor)(void *p_data)
 );
+void usb_transfer_batch_destroy(const usb_transfer_batch_t *instance);
 
-void usb_transfer_batch_finish(usb_transfer_batch_t *instance,
+void usb_transfer_batch_finish(const usb_transfer_batch_t *instance,
     const void* data, size_t size);
-void usb_transfer_batch_call_in(usb_transfer_batch_t *instance);
-void usb_transfer_batch_call_out(usb_transfer_batch_t *instance);
-void usb_transfer_batch_dispose(usb_transfer_batch_t *instance);
-
-/** Helper function, calls callback and correctly destroys batch structure.
- *
- * @param[in] instance Batch structure to use.
- */
-static inline void usb_transfer_batch_call_in_and_dispose(
-    usb_transfer_batch_t *instance)
-{
-	assert(instance);
-	usb_transfer_batch_call_in(instance);
-	usb_transfer_batch_dispose(instance);
-}
 /*----------------------------------------------------------------------------*/
-/** Helper function calls callback and correctly destroys batch structure.
- *
- * @param[in] instance Batch structure to use.
- */
-static inline void usb_transfer_batch_call_out_and_dispose(
-    usb_transfer_batch_t *instance)
-{
-	assert(instance);
-	usb_transfer_batch_call_out(instance);
-	usb_transfer_batch_dispose(instance);
-}
-/*----------------------------------------------------------------------------*/
-/** Helper function, sets error value and finishes transfer.
+/** Override error value and finishes transfer.
  *
  * @param[in] instance Batch structure to use.
@@ -151,6 +124,6 @@
 }
 /*----------------------------------------------------------------------------*/
-/** Helper function, determines batch direction absed on the present callbacks
- * @param[in] instance Batch structure to use.
+/** Determine batch direction based on the callbacks present
+ * @param[in] instance Batch structure to use, non-null.
  * @return USB_DIRECTION_IN, or USB_DIRECTION_OUT.
  */
