xref: /openbmc/linux/drivers/usb/musb/omap2430.h (revision 3b64b188)
1 /*
2  * Copyright (C) 2005-2006 by Texas Instruments
3  *
4  * The Inventra Controller Driver for Linux is free software; you
5  * can redistribute it and/or modify it under the terms of the GNU
6  * General Public License version 2 as published by the Free Software
7  * Foundation.
8  */
9 
10 #ifndef __MUSB_OMAP243X_H__
11 #define __MUSB_OMAP243X_H__
12 
13 #include <plat/usb.h>
14 
15 /*
16  * OMAP2430-specific definitions
17  */
18 
19 #define OTG_REVISION		0x400
20 
21 #define OTG_SYSCONFIG		0x404
22 #	define	MIDLEMODE	12	/* bit position */
23 #	define	FORCESTDBY		(0 << MIDLEMODE)
24 #	define	NOSTDBY			(1 << MIDLEMODE)
25 #	define	SMARTSTDBY		(2 << MIDLEMODE)
26 
27 #	define	SIDLEMODE		3	/* bit position */
28 #	define	FORCEIDLE		(0 << SIDLEMODE)
29 #	define	NOIDLE			(1 << SIDLEMODE)
30 #	define	SMARTIDLE		(2 << SIDLEMODE)
31 
32 #	define	ENABLEWAKEUP		(1 << 2)
33 #	define	SOFTRST			(1 << 1)
34 #	define	AUTOIDLE		(1 << 0)
35 
36 #define OTG_SYSSTATUS		0x408
37 #	define	RESETDONE		(1 << 0)
38 
39 #define OTG_INTERFSEL		0x40c
40 #	define	EXTCP			(1 << 2)
41 #	define	PHYSEL			0	/* bit position */
42 #	define	UTMI_8BIT		(0 << PHYSEL)
43 #	define	ULPI_12PIN		(1 << PHYSEL)
44 #	define	ULPI_8PIN		(2 << PHYSEL)
45 
46 #define OTG_SIMENABLE		0x410
47 #	define	TM1			(1 << 0)
48 
49 #define OTG_FORCESTDBY		0x414
50 #	define	ENABLEFORCE		(1 << 0)
51 
52 /*
53  * Control Module bit definitions
54  * XXX: Will be removed once we have a driver for control module.
55  */
56 #define	AVALID				BIT(0)
57 #define	BVALID				BIT(1)
58 #define	VBUSVALID			BIT(2)
59 #define	SESSEND				BIT(3)
60 #define	IDDIG				BIT(4)
61 #endif	/* __MUSB_OMAP243X_H__ */
62