1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Board data structure for musb gadget on OMAPs
4  *
5  * Copyright (C) 2012, Ilya Yanok <ilya.yanok@gmail.com>
6  */
7 
8 #ifndef __ASM_ARM_OMAP_MUSB_H
9 #define __ASM_ARM_OMAP_MUSB_H
10 #include <linux/usb/musb.h>
11 
12 extern struct musb_platform_ops musb_dsps_ops;
13 extern const struct musb_platform_ops am35x_ops;
14 extern const struct musb_platform_ops omap2430_ops;
15 
16 struct omap_musb_board_data {
17 	u8 interface_type;
18 	struct udevice *dev;
19 	void (*set_phy_power)(struct udevice *dev, u8 on);
20 	void (*clear_irq)(struct udevice *dev);
21 	void (*reset)(struct udevice *dev);
22 };
23 
24 enum musb_interface    {MUSB_INTERFACE_ULPI, MUSB_INTERFACE_UTMI};
25 
26 struct ti_musb_platdata {
27 	void *base;
28 	void *ctrl_mod_base;
29 	struct musb_hdrc_platform_data plat;
30 };
31 
32 #endif /* __ASM_ARM_OMAP_MUSB_H */
33