linux/include/linux/usb/musb.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * This is used to for host and peripheral modes of the driver for
 * Inventra (Multidrop) Highspeed Dual-Role Controllers:  (M)HDRC.
 *
 * Board initialization should put one of these into dev->platform_data,
 * probably on some platform_device named "musb-hdrc".  It encapsulates
 * key configuration differences between boards.
 */

#ifndef __LINUX_USB_MUSB_H
#define __LINUX_USB_MUSB_H

/* The USB role is defined by the connector used on the board, so long as
 * standards are being followed.  (Developer boards sometimes won't.)
 */
enum musb_mode {};

struct clk;

enum musb_fifo_style {} __attribute__ ((packed));

enum musb_buf_mode {} __attribute__ ((packed));

struct musb_fifo_cfg {};

#define MUSB_EP_FIFO(ep, st, m, pkt)

#define MUSB_EP_FIFO_SINGLE(ep, st, pkt)

#define MUSB_EP_FIFO_DOUBLE(ep, st, pkt)

struct musb_hdrc_eps_bits {};

struct musb_hdrc_config {};

struct musb_hdrc_platform_data {};

enum musb_vbus_id_status {};

#if IS_ENABLED(CONFIG_USB_MUSB_HDRC)
int musb_mailbox(enum musb_vbus_id_status status);
#else
static inline int musb_mailbox(enum musb_vbus_id_status status)
{
	return 0;
}
#endif

/* TUSB 6010 support */

#define TUSB6010_OSCCLK_60
#define TUSB6010_REFCLK_24
#define TUSB6010_REFCLK_19

#endif /* __LINUX_USB_MUSB_H */