linux/include/linux/phy/tegra/xusb.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * Copyright (c) 2016-2020, NVIDIA CORPORATION.  All rights reserved.
   4 */
   5
   6#ifndef PHY_TEGRA_XUSB_H
   7#define PHY_TEGRA_XUSB_H
   8
   9struct tegra_xusb_padctl;
  10struct device;
  11enum usb_device_speed;
  12
  13struct tegra_xusb_padctl *tegra_xusb_padctl_get(struct device *dev);
  14void tegra_xusb_padctl_put(struct tegra_xusb_padctl *padctl);
  15
  16int tegra_xusb_padctl_usb3_save_context(struct tegra_xusb_padctl *padctl,
  17                                        unsigned int port);
  18int tegra_xusb_padctl_hsic_set_idle(struct tegra_xusb_padctl *padctl,
  19                                    unsigned int port, bool idle);
  20int tegra_xusb_padctl_usb3_set_lfps_detect(struct tegra_xusb_padctl *padctl,
  21                                           unsigned int port, bool enable);
  22int tegra_xusb_padctl_set_vbus_override(struct tegra_xusb_padctl *padctl,
  23                                        bool val);
  24int tegra_phy_xusb_utmi_port_reset(struct phy *phy);
  25int tegra_xusb_padctl_get_usb3_companion(struct tegra_xusb_padctl *padctl,
  26                                         unsigned int port);
  27int tegra_xusb_padctl_enable_phy_sleepwalk(struct tegra_xusb_padctl *padctl, struct phy *phy,
  28                                           enum usb_device_speed speed);
  29int tegra_xusb_padctl_disable_phy_sleepwalk(struct tegra_xusb_padctl *padctl, struct phy *phy);
  30int tegra_xusb_padctl_enable_phy_wake(struct tegra_xusb_padctl *padctl, struct phy *phy);
  31int tegra_xusb_padctl_disable_phy_wake(struct tegra_xusb_padctl *padctl, struct phy *phy);
  32bool tegra_xusb_padctl_remote_wake_detected(struct tegra_xusb_padctl *padctl, struct phy *phy);
  33
  34#endif /* PHY_TEGRA_XUSB_H */
  35