Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
tegra_usb_phy.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2010 Google, Inc.
3  *
4  * This software is licensed under the terms of the GNU General Public
5  * License version 2, as published by the Free Software Foundation, and
6  * may be copied, distributed, and modified under those terms.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  */
14 
15 #ifndef __TEGRA_USB_PHY_H
16 #define __TEGRA_USB_PHY_H
17 
18 #include <linux/clk.h>
19 #include <linux/usb/otg.h>
20 
29 };
30 
33  const char *clk;
34 };
35 
40 };
41 
45 };
46 
47 struct tegra_xtal_freq;
48 
49 struct tegra_usb_phy {
50  int instance;
51  const struct tegra_xtal_freq *freq;
52  void __iomem *regs;
54  struct clk *clk;
55  struct clk *pll_u;
56  struct clk *pad_clk;
58  void *config;
59  struct usb_phy *ulpi;
60  struct usb_phy u_phy;
61  struct device *dev;
62 };
63 
65  void __iomem *regs, void *config, enum tegra_usb_phy_mode phy_mode);
66 
68 
70 
72 
74 
76  enum tegra_usb_phy_port_speed port_speed);
77 
79 
80 #endif /* __TEGRA_USB_PHY_H */