aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/phy
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2015-11-11 12:24:21 -0500
committerThierry Reding <treding@nvidia.com>2016-04-29 10:44:47 -0400
commit53d2a715c24034ee4017f3c15c82bb4a53a07da5 (patch)
treea520b1e745e31eba9fb8936c3e19e1c4103214e1 /include/linux/phy
parentd6f83c1b1dcac39729f48fe1c2d426b9c135df41 (diff)
phy: Add Tegra XUSB pad controller support
Add a new driver for the XUSB pad controller found on NVIDIA Tegra SoCs. This hardware block used to be exposed as a pin controller, but it turns out that this isn't a good fit. The new driver and DT binding much more accurately describe the hardware and are more flexible in supporting new SoC generations. Acked-by: Kishon Vijay Abraham I <kishon@ti.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'include/linux/phy')
-rw-r--r--include/linux/phy/tegra/xusb.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/linux/phy/tegra/xusb.h b/include/linux/phy/tegra/xusb.h
new file mode 100644
index 000000000000..8e1a57a78d9f
--- /dev/null
+++ b/include/linux/phy/tegra/xusb.h
@@ -0,0 +1,30 @@
1/*
2 * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms and conditions of the GNU General Public License,
6 * version 2, as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11 * more details.
12 */
13
14#ifndef PHY_TEGRA_XUSB_H
15#define PHY_TEGRA_XUSB_H
16
17struct tegra_xusb_padctl;
18struct device;
19
20struct tegra_xusb_padctl *tegra_xusb_padctl_get(struct device *dev);
21void tegra_xusb_padctl_put(struct tegra_xusb_padctl *padctl);
22
23int tegra_xusb_padctl_usb3_save_context(struct tegra_xusb_padctl *padctl,
24 unsigned int port);
25int tegra_xusb_padctl_hsic_set_idle(struct tegra_xusb_padctl *padctl,
26 unsigned int port, bool idle);
27int tegra_xusb_padctl_usb3_set_lfps_detect(struct tegra_xusb_padctl *padctl,
28 unsigned int port, bool enable);
29
30#endif /* PHY_TEGRA_XUSB_H */