162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#ifndef _AM335x_PHY_CONTROL_H_ 362306a36Sopenharmony_ci#define _AM335x_PHY_CONTROL_H_ 462306a36Sopenharmony_ci 562306a36Sopenharmony_cistruct phy_control { 662306a36Sopenharmony_ci void (*phy_power)(struct phy_control *phy_ctrl, u32 id, 762306a36Sopenharmony_ci enum usb_dr_mode dr_mode, bool on); 862306a36Sopenharmony_ci void (*phy_wkup)(struct phy_control *phy_ctrl, u32 id, bool on); 962306a36Sopenharmony_ci}; 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_cistatic inline void phy_ctrl_power(struct phy_control *phy_ctrl, u32 id, 1262306a36Sopenharmony_ci enum usb_dr_mode dr_mode, bool on) 1362306a36Sopenharmony_ci{ 1462306a36Sopenharmony_ci phy_ctrl->phy_power(phy_ctrl, id, dr_mode, on); 1562306a36Sopenharmony_ci} 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_cistatic inline void phy_ctrl_wkup(struct phy_control *phy_ctrl, u32 id, bool on) 1862306a36Sopenharmony_ci{ 1962306a36Sopenharmony_ci phy_ctrl->phy_wkup(phy_ctrl, id, on); 2062306a36Sopenharmony_ci} 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_cistruct phy_control *am335x_get_phy_control(struct device *dev); 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci#endif 25