Lines Matching refs:musb
52 struct musb;
136 #define MUSB_MODE(musb) ((musb)->is_host ? "Host" : "Peripheral") argument
183 int (*init)(struct musb *musb);
184 int (*exit)(struct musb *musb);
186 void (*enable)(struct musb *musb);
187 void (*disable)(struct musb *musb);
203 (*dma_init) (struct musb *musb, void __iomem *base);
205 int (*set_mode)(struct musb *musb, u8 mode);
206 void (*try_idle)(struct musb *musb, unsigned long timeout);
207 int (*recover)(struct musb *musb);
209 int (*vbus_status)(struct musb *musb);
210 void (*set_vbus)(struct musb *musb, int on);
215 void (*pre_root_reset_end)(struct musb *musb);
216 void (*post_root_reset_end)(struct musb *musb);
225 struct musb *musb; member
301 struct musb { struct
393 #define can_bulk_split(musb,type) \ argument
394 (((type) == USB_ENDPOINT_XFER_BULK) && (musb)->bulk_split)
397 #define can_bulk_combine(musb,type) \ argument
398 (((type) == USB_ENDPOINT_XFER_BULK) && (musb)->bulk_combine)
450 static inline struct musb *gadget_to_musb(struct usb_gadget *g) in gadget_to_musb()
452 return container_of(g, struct musb, g); in gadget_to_musb()
456 static inline int musb_read_fifosize(struct musb *musb, in musb_read_fifosize() argument
459 musb->nr_endpoints++; in musb_read_fifosize()
460 musb->epmask |= (1 << epnum); in musb_read_fifosize()
474 static inline void musb_configure_ep0(struct musb *musb) in musb_configure_ep0() argument
476 musb->endpoints[0].max_packet_sz_tx = MUSB_EP0_FIFOSIZE; in musb_configure_ep0()
477 musb->endpoints[0].max_packet_sz_rx = MUSB_EP0_FIFOSIZE; in musb_configure_ep0()
478 musb->endpoints[0].is_shared_fifo = true; in musb_configure_ep0()
483 static inline int musb_read_fifosize(struct musb *musb, in musb_read_fifosize() argument
486 void __iomem *mbase = musb->mregs; in musb_read_fifosize()
490 reg = musb_readb(mbase, musb->io.ep_offset(epnum, MUSB_FIFOSIZE)); in musb_read_fifosize()
495 musb->nr_endpoints++; in musb_read_fifosize()
496 musb->epmask |= (1 << epnum); in musb_read_fifosize()
513 static inline void musb_configure_ep0(struct musb *musb) in musb_configure_ep0() argument
515 musb->endpoints[0].max_packet_sz_tx = MUSB_EP0_FIFOSIZE; in musb_configure_ep0()
516 musb->endpoints[0].max_packet_sz_rx = MUSB_EP0_FIFOSIZE; in musb_configure_ep0()
517 musb->endpoints[0].is_shared_fifo = true; in musb_configure_ep0()
526 extern void musb_stop(struct musb *musb);
527 extern void musb_start(struct musb *musb);
532 extern void musb_load_testpacket(struct musb *);
534 extern irqreturn_t musb_interrupt(struct musb *);
536 extern void musb_hnp_stop(struct musb *musb);
538 static inline void musb_platform_set_vbus(struct musb *musb, int is_on) in musb_platform_set_vbus() argument
540 if (musb->ops->set_vbus) in musb_platform_set_vbus()
541 musb->ops->set_vbus(musb, is_on); in musb_platform_set_vbus()
544 static inline void musb_platform_enable(struct musb *musb) in musb_platform_enable() argument
546 if (musb->ops->enable) in musb_platform_enable()
547 musb->ops->enable(musb); in musb_platform_enable()
550 static inline void musb_platform_disable(struct musb *musb) in musb_platform_disable() argument
552 if (musb->ops->disable) in musb_platform_disable()
553 musb->ops->disable(musb); in musb_platform_disable()
556 static inline int musb_platform_set_mode(struct musb *musb, u8 mode) in musb_platform_set_mode() argument
558 if (!musb->ops->set_mode) in musb_platform_set_mode()
561 return musb->ops->set_mode(musb, mode); in musb_platform_set_mode()
564 static inline void musb_platform_try_idle(struct musb *musb, in musb_platform_try_idle() argument
567 if (musb->ops->try_idle) in musb_platform_try_idle()
568 musb->ops->try_idle(musb, timeout); in musb_platform_try_idle()
571 static inline int musb_platform_recover(struct musb *musb) in musb_platform_recover() argument
573 if (!musb->ops->recover) in musb_platform_recover()
576 return musb->ops->recover(musb); in musb_platform_recover()
579 static inline int musb_platform_get_vbus_status(struct musb *musb) in musb_platform_get_vbus_status() argument
581 if (!musb->ops->vbus_status) in musb_platform_get_vbus_status()
584 return musb->ops->vbus_status(musb); in musb_platform_get_vbus_status()
587 static inline int musb_platform_init(struct musb *musb) in musb_platform_init() argument
589 if (!musb->ops->init) in musb_platform_init()
592 return musb->ops->init(musb); in musb_platform_init()
595 static inline int musb_platform_exit(struct musb *musb) in musb_platform_exit() argument
597 if (!musb->ops->exit) in musb_platform_exit()
600 return musb->ops->exit(musb); in musb_platform_exit()
603 static inline void musb_platform_pre_root_reset_end(struct musb *musb) in musb_platform_pre_root_reset_end() argument
605 if (musb->ops->pre_root_reset_end) in musb_platform_pre_root_reset_end()
606 musb->ops->pre_root_reset_end(musb); in musb_platform_pre_root_reset_end()
609 static inline void musb_platform_post_root_reset_end(struct musb *musb) in musb_platform_post_root_reset_end() argument
611 if (musb->ops->post_root_reset_end) in musb_platform_post_root_reset_end()
612 musb->ops->post_root_reset_end(musb); in musb_platform_post_root_reset_end()