#ifndef __LINUX_CDNS3_DRD
#define __LINUX_CDNS3_DRD
#include <linux/usb/otg.h>
#include "core.h"
struct cdns3_otg_regs { … };
struct cdns3_otg_legacy_regs { … };
struct cdnsp_otg_regs { … };
#define OTG_CDNSP_CHECK_DID(did) …
#define OTG_CDNS3_CHECK_DID(did) …
struct cdns_otg_common_regs { … };
struct cdns_otg_irq_regs { … };
#define CDNS_RID(p) …
#define CDNS_DID(p) …
#define OTGCMD_DEV_BUS_REQ …
#define OTGCMD_HOST_BUS_REQ …
#define OTGCMD_OTG_EN …
#define OTGCMD_OTG_DIS …
#define OTGCMD_A_DEV_EN …
#define OTGCMD_A_DEV_DIS …
#define OTGCMD_DEV_BUS_DROP …
#define OTGCMD_HOST_BUS_DROP …
#define OTGCMD_DEV_POWER_OFF …
#define OTGCMD_HOST_POWER_OFF …
#define OTGIEN_ID_CHANGE_INT …
#define OTGIEN_VBUSVALID_RISE_INT …
#define OTGIEN_VBUSVALID_FALL_INT …
#define OTGSTS_ID_VALUE …
#define OTGSTS_VBUS_VALID …
#define OTGSTS_SESSION_VALID …
#define OTGSTS_DEV_ACTIVE …
#define OTGSTS_HOST_ACTIVE …
#define OTGSTS_OTG_NRDY_MASK …
#define OTGSTS_OTG_NRDY(p) …
#define OTGSTS_STRAP(p) …
#define OTGSTS_STRAP_NO_DEFAULT_CFG …
#define OTGSTS_STRAP_HOST_OTG …
#define OTGSTS_STRAP_HOST …
#define OTGSTS_STRAP_GADGET …
#define OTGSTS_CDNSP_STRAP_HOST …
#define OTGSTS_CDNSP_STRAP_GADGET …
#define OTGSTS_CDNS3_XHCI_READY …
#define OTGSTS_CDNSP_XHCI_READY …
#define OTGSTS_CDNS3_DEV_READY …
#define OTGSTS_CDNSP_DEV_READY …
#define OTGSTATE_DEV_STATE_MASK …
#define OTGSTATE_HOST_STATE_MASK …
#define OTGSTATE_HOST_STATE_IDLE …
#define OTGSTATE_HOST_STATE_VBUS_FALL …
#define OTGSTATE_HOST_STATE(p) …
#define OTGREFCLK_STB_CLK_SWITCH_EN …
#define SUSP_CTRL_SUSPEND_RESIDENCY_ENABLE …
#define OVERRIDE_IDPULLUP …
#define OVERRIDE_IDPULLUP_V0 …
#define OVERRIDE_SESS_VLD_SEL …
#define PHYRST_CFG_PHYRST_A_ENABLE …
#define CDNS3_ID_PERIPHERAL …
#define CDNS3_ID_HOST …
bool cdns_is_host(struct cdns *cdns);
bool cdns_is_device(struct cdns *cdns);
int cdns_get_id(struct cdns *cdns);
int cdns_get_vbus(struct cdns *cdns);
void cdns_clear_vbus(struct cdns *cdns);
void cdns_set_vbus(struct cdns *cdns);
int cdns_drd_init(struct cdns *cdns);
int cdns_drd_exit(struct cdns *cdns);
int cdns_drd_update_mode(struct cdns *cdns);
int cdns_drd_gadget_on(struct cdns *cdns);
void cdns_drd_gadget_off(struct cdns *cdns);
int cdns_drd_host_on(struct cdns *cdns);
void cdns_drd_host_off(struct cdns *cdns);
bool cdns_power_is_lost(struct cdns *cdns);
#endif