USB: use genalloc for USB HCs with local memory
[platform/kernel/linux-starfive.git] / include / linux / usb / hcd.h
index bb57b5a..127560a 100644 (file)
@@ -216,6 +216,9 @@ struct usb_hcd {
 #define        HC_IS_RUNNING(state) ((state) & __ACTIVE)
 #define        HC_IS_SUSPENDED(state) ((state) & __SUSPEND)
 
+       /* memory pool for HCs having local memory, or %NULL */
+       struct gen_pool         *localmem_pool;
+
        /* more shared queuing code would be good; it should support
         * smarter scheduling, handle transaction translators, etc;
         * input size of periodic table to an interrupt scheduler.
@@ -461,6 +464,8 @@ extern int usb_add_hcd(struct usb_hcd *hcd,
                unsigned int irqnum, unsigned long irqflags);
 extern void usb_remove_hcd(struct usb_hcd *hcd);
 extern int usb_hcd_find_raw_port_number(struct usb_hcd *hcd, int port1);
+int usb_hcd_setup_local_mem(struct usb_hcd *hcd, phys_addr_t phys_addr,
+                           dma_addr_t dma, size_t size);
 
 struct platform_device;
 extern void usb_hcd_platform_shutdown(struct platform_device *dev);