Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
msm_hsusb.h
Go to the documentation of this file.
1 /* linux/include/asm-arm/arch-msm/hsusb.h
2  *
3  * Copyright (C) 2008 Google, Inc.
4  * Author: Brian Swetland <[email protected]>
5  * Copyright (c) 2009-2011, Code Aurora Forum. All rights reserved.
6  *
7  * This software is licensed under the terms of the GNU General Public
8  * License version 2, as published by the Free Software Foundation, and
9  * may be copied, distributed, and modified under those terms.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  */
17 
18 #ifndef __ASM_ARCH_MSM_HSUSB_H
19 #define __ASM_ARCH_MSM_HSUSB_H
20 
21 #include <linux/types.h>
22 #include <linux/usb/otg.h>
23 
33  USB_NONE = 0,
37 };
38 
54 };
55 
68 };
69 
70 #define IDEV_CHG_MAX 1500
71 #define IUNIT 100
72 
94 };
95 
112 };
113 
130  void (*vbus_power)(bool on);
131  unsigned power_budget;
138 };
139 
162 struct msm_otg {
163  struct usb_phy phy;
165  int irq;
166  struct clk *clk;
167  struct clk *pclk;
168  struct clk *pclk_src;
170  struct clk *core_clk;
171  void __iomem *regs;
172 #define ID 0
173 #define B_SESS_VLD 1
174  unsigned long inputs;
178  unsigned cur_power;
183 };
184 
185 #endif