]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/usb/renesas_usbhs/pipe.h
usb: gadget: renesas_usbhs: move usbhsp_type() to usbhs_pipe_type()
[mv-sheeva.git] / drivers / usb / renesas_usbhs / pipe.h
index 41534cb0e73408ffb337b56ab491e508c9dae132..fc776accb1dfddd88557d1e615f180fd9d83f744 100644 (file)
@@ -30,11 +30,15 @@ struct usbhs_pipe {
        struct usbhs_fifo *fifo;
        struct list_head list;
 
+       int maxp;
+
        u32 flags;
 #define USBHS_PIPE_FLAGS_IS_USED               (1 << 0)
 #define USBHS_PIPE_FLAGS_IS_DIR_IN             (1 << 1)
 #define USBHS_PIPE_FLAGS_IS_DIR_HOST           (1 << 2)
 
+       struct usbhs_pkt_handle *handler;
+
        void *mod_private;
 };
 
@@ -76,8 +80,7 @@ void usbhs_usbreq_set_val(struct usbhs_priv *priv, struct usb_ctrlrequest *req);
  * pipe control
  */
 struct usbhs_pipe
-*usbhs_pipe_malloc(struct usbhs_priv *priv,
-                  const struct usb_endpoint_descriptor *desc);
+*usbhs_pipe_malloc(struct usbhs_priv *priv, int endpoint_type, int dir_in);
 int usbhs_pipe_probe(struct usbhs_priv *priv);
 void usbhs_pipe_remove(struct usbhs_priv *priv);
 int usbhs_pipe_is_dir_in(struct usbhs_pipe *pipe);
@@ -93,6 +96,7 @@ void usbhs_pipe_enable(struct usbhs_pipe *pipe);
 void usbhs_pipe_disable(struct usbhs_pipe *pipe);
 void usbhs_pipe_stall(struct usbhs_pipe *pipe);
 void usbhs_pipe_select_fifo(struct usbhs_pipe *pipe, struct usbhs_fifo *fifo);
+void usbhs_pipe_config_update(struct usbhs_pipe *pipe, u16 epnum, u16 maxp);
 
 #define usbhs_pipe_to_priv(p)  ((p)->priv)
 #define usbhs_pipe_number(p)   (int)((p) - (p)->priv->pipe_info.pipe)
@@ -100,6 +104,9 @@ void usbhs_pipe_select_fifo(struct usbhs_pipe *pipe, struct usbhs_fifo *fifo);
 #define usbhs_pipe_to_fifo(p)  ((p)->fifo)
 #define usbhs_pipe_is_busy(p)  usbhs_pipe_to_fifo(p)
 
+#define usbhs_pipe_type(p)             ((p)->pipe_type)
+#define usbhs_pipe_type_is(p, t)       ((p)->pipe_type == t)
+
 /*
  * dcp control
  */