blob: abbabf8aa342575a8cf54ed1201a02b781bc0f59 [file] [log] [blame]
#ifndef __PHY_SAMSUNG_COMBO_H__
#define __PHY_SAMSUNG_COMBO_H__
#define EXYNOS_USBCON_CTRLVER (0x0)
#define CTRLVER_CTRL_VER_MASK (0xFFFFFFFF)
#define EXYNOS_USBCON_LINKCTRL (0x4)
#define LINKCTRL_FORCE_RXELECIDLE (0x1 << 18)
#define LINKCTRL_FORCE_PHYSTATUS (0x1 << 17)
#define LINKCTRL_FORCE_PIPE_EN (0x1 << 16)
#define LINKCTRL_DIS_BUSPEND_QACT (0x1 << 13)
#define LINKCTRL_DIS_LINKGATE_QACT (0x1 << 12)
#define LINKCTRL_DIS_ID0_QACT (0x1 << 11)
#define LINKCTRL_DIS_VBUSVALID_QACT (0x1 << 10)
#define LINKCTRL_DIS_BVALID_QACT (0x1 << 9)
#define LINKCTRL_FORCE_QACT (0x1 << 8)
#define LINKCTRL_BUS_FILTER_BYPASS_MASK (0xF << 4)
#define LINKCTRL_HOST_SYSTEM_ERR (0x1 << 2)
#define LINKCTRL_LINK_PME (0x1 << 1)
#define LINKCTRL_PME_GENERATION (0x1 << 0)
#define EXYNOS_USBCON_PHYCON_LINKPORT (0x08)
#define PHYCON_LINKPORT_HOST_NUM_U3_MASK (0xF << 16)
#define PHYCON_LINKPORT_HOST_NUM_U2_MASK (0xF << 12)
#define PHYCON_LINKPORT_HOST_U3_PORT_DISABLE (0x1 << 9)
#define PHYCON_LINKPORT_HOST_U2_PORT_DISABLE (0x1 << 8)
#define PHYCON_LINKPORT_HOST_PORT_POWER_CON_PRESENT (0x1 << 6)
#define PHYCON_LINKPORT_HUB_PORT_OVERCURRENT_U3 (0x1 << 5)
#define PHYCON_LINKPORT_HUB_PORT_OVERCURRENT_U2 (0x1 << 4)
#define PHYCON_LINKPORT_HUB_PORT_OVERCURRENT_SET_U3 (0x1 << 3)
#define PHYCON_LINKPORT_HUB_PORT_OVERCURRENT_SET_U2 (0x1 << 2)
#define PHYCON_LINKPORT_HUB_PERM_ATTACH_U3 (0x1 << 1)
#define PHYCON_LINKPORT_HUB_PERM_ATTACH_U2 (0x1 << 0)
#define EXYNOS_USBCON_LINK_DEBUG_L (0xC)
#define LINK_DEBUG_L_DEBUG_L_MASK (0xFFFFFFFF)
#define EXYNOS_USBCON_LINK_DEBUG_H (0x10)
#define LINK_DEBUG_H_DEBUG_H_MASK (0xFFFFFFFF)
#define EXYNOS_USBCON_LTSTATE_HIS (0x14)
#define LTSTATE_HIS_LINKTRN_DONE (0x1 << 31)
#define LTSTATE_HIS_LTSTATE_HIS4_MASK (0xF << 16)
#define LTSTATE_HIS_LTSTATE_HIS3_MASK (0xF << 12)
#define LTSTATE_HIS_LTSTATE_HIS2_MASK (0xF << 8)
#define LTSTATE_HIS_LTSTATE_HIS1_MASK (0xF << 4)
#define LTSTATE_HIS_LTSTATE_HIS0_MASK (0xF << 0)
#define EXYNOS_USBCON_CLKRSTCTRL (0x20)
#define CLKRSTCTRL_USBAUDIO_CLK_GATE_EN (0x1 << 9)
#define CLKRSTCTRL_USBAUDIO_CLK_SEL (0x1 << 8)
#define CLKRSTCTRL_LINK_PCLK_SEL (0x1 << 7)
#define CLKRSTCTRL_REFCLKSEL (0x1 << 4)
#define CLKRSTCTRL_PHY_SW_RST (0x1 << 3)
#define CLKRSTCTRL_PHY_RESET_SEL (0x1 << 2)
#define CLKRSTCTRL_PORTRESET (0x1 << 1)
#define CLKRSTCTRL_LINK_SW_RST (0x1 << 0)
#define EXYNOS_USBCON_PWRCTL (0x24)
#define PWRCTL_FORCE_POWERDOWN (0x1 << 2)
#define EXYNOS_USBCON_SSPPLLCTL (0x30)
#define SSPPLLCTL_FSEL_MASK (0x3F << 0)
#define EXYNOS_USBCON_SECPMACTL (0x48)
#define SECPMACTL_PMA_PLL_REF_CLK_SEL_MASK (0x3 << 10)
#define SECPMACTL_PMA_REF_FREQ_SEL_MASK (0x3 << 8)
#define SECPMACTL_PMA_LOW_PWR (0x1 << 4)
#define SECPMACTL_PMA_TRSV_SW_RST (0x1 << 3)
#define SECPMACTL_PMA_CMN_SW_RST (0x1 << 2)
#define SECPMACTL_PMA_INIT_SW_RST (0x1 << 1)
#define SECPMACTL_PMA_APB_SW_RST (0x1 << 0)
#define EXYNOS_USBCON_UTMICTRL (0x50)
#define UTMICTRL_OPMODE_EN (0x1 << 8)
#define UTMICTRL_FORCE_OPMODE_MASK (0x3 << 6)
#define UTMICTRL_FORCE_VBUSVALID (0x1 << 5)
#define UTMICTRL_FORCE_BVALID (0x1 << 4)
#define UTMICTRL_FORCE_DPPULLDOWN (0x1 << 3)
#define UTMICTRL_FORCE_DMPULLDOWN (0x1 << 2)
#define UTMICTRL_FORCE_SUSPEND (0x1 << 1)
#define UTMICTRL_FORCE_SLEEP (0x1 << 0)
#define EXYNOS_USBCON_HSPCTRL (0x54)
#define HSPCTRL_AUTORSM_ENB (0x1 << 29)
#define HSPCTRL_RETENABLE_EN (0x1 << 28)
#define HSPCTRL_FSLS_SPEED_SEL (0x1 << 25)
#define HSPCTRL_FSV_OUT_EN (0x1 << 24)
#define HSPCTRL_HS_XCVR_EXT_CTL (0x1 << 22)
#define HSPCTRL_HS_RXDAT (0x1 << 21)
#define HSPCTRL_HS_SQUELCH (0x1 << 20)
#define HSPCTRL_FSVMINUS (0x1 << 17)
#define HSPCTRL_FSVPLUS (0x1 << 16)
#define HSPCTRL_VBUSVLDEXTSEL (0x1 << 13)
#define HSPCTRL_VBUSVLDEXT (0x1 << 12)
#define HSPCTRL_EN_UTMISUSPEND (0x1 << 9)
#define HSPCTRL_COMMONONN (0x1 << 8)
#define HSPCTRL_VATESTENB (0x1 << 6)
#define HSPCTRL_CHGDET (0x1 << 5)
#define HSPCTRL_VDATSRCENB (0x1 << 4)
#define HSPCTRL_VDATDETENB (0x1 << 3)
#define HSPCTRL_CHRGSEL (0x1 << 2)
#define HSPCTRL_ACAENB (0x1 << 1)
#define HSPCTRL_DEDENB (0x1 << 0)
#define EXYNOS_USBCON_HSPPARACON (0x58)
#define HSPPARACON_TXVREFTUNE_MASK (0xF << 28)
#define HSPPARACON_TXRISETUNE_MASK (0x3 << 24)
#define HSPPARACON_TXRESTUNE_MASK (0x3 << 21)
#define HSPPARACON_TXPREEMPPULSETUNE (0x1 << 20)
#define HSPPARACON_TXPREEMPAMPTUNE_MASK (0x3 << 18)
#define HSPPARACON_TXHSXVTUNE_MASK (0x3 << 16)
#define HSPPARACON_TXFSLSTUNE_MASK (0xF << 12)
#define HSPPARACON_SQRXTUNE_MASK (0x7 << 8)
#define HSPPARACON_OTGTUNE_MASK (0x7 << 4)
#define HSPPARACON_COMPDISTUNE_MASK (0x7 << 0)
#define EXYNOS_USBCON_HSPTEST (0x5C)
#define HSPTEST_SIDDQ_PORT0 (0x1 << 24)
#define HSPTEST_LINESTATE_PORT0_MASK (0x3 << 20)
#define HSPTEST_TESTDATAOUT_PORT0_MASK (0xF << 16)
#define HSPTEST_TESTCLK_PORT0 (0x1 << 13)
#define HSPTEST_TESTDATAOUTSEL_PORT0 (0x1 << 12)
#define HSPTEST_TESTADDR_PORT0_MASK (0xF << 8)
#define HSPTEST_TESTDATAIN_PORT0_MASK (0xFF << 0)
#define EXYNOS_USBCON_HSPPLLTUNE (0x60)
#define HSPPLLTUNE_PLLBTUNE (0x1 << 8)
#define HSPPLLTUNE_PLLITUNE_MASK (0x3 << 4)
#define HSPPLLTUNE_PLLPTUNE_MASK (0xF << 0)
#define EXYNOS_USBCON_REWA_CTRL (0x100)
#define REWA_CTRL_HSREWA_EN (0x1 << 0)
#define EXYNOS_USBCON_HSREWA_INTR (0x104)
#define HSREWA_INTR_WAKEUP_MASK_MASK (0x1 << 12)
#define HSREWA_INTR_TIMEOUT_INTR_MASK_MASK (0x1 << 8)
#define HSREWA_INTR_EVENT_INT_MASK_MASK (0x1 << 4)
#define HSREWA_INTR_WAKEUP_INTR_MASK_MASK (0x1 << 0)
#define EXYNOS_USBCON_HSREWA_CTRL (0x108)
#define HSREWA_CTRL_DIG_BYPASS_CON_EN (0x1 << 28)
#define HSREWA_CTRL_DPDM_MONITOR_SEL (0x1 << 24)
#define HSREWA_CTRL_HS_LINK_READY (0x1 << 20)
#define HSREWA_CTRL_HS_SYS_VALID (0x1 << 16)
#define HSREWA_CTRL_HS_REWA_ERROR (0x1 << 4)
#define HSREWA_CTRL_HS_REWA_DONE (0x1 << 0)
#define EXYNOS_USBCON_HSREWA_REFTO (0x10C)
#define HSREWA_REFTO_HOST_K_TIMEOUT_MASK (0xFFFFFFFF << 0)
#define EXYNOS_USBCON_HSREWA_HSTK (0x110)
#define HSREWA_HSTK_HOST_K_DELAY_MASK (0xFFFFFFFF << 0)
#define EXYNOS_USBCON_HSREWA_CNT (0x114)
#define HSREWA_CNT_WAKEUP_CNT_MASK (0xFFFFFFFF << 0)
#define EXYNOS_USBCON_HSREWA_INT1_EVNT (0x118)
#define HSREWA_INT1_EVNT_ERR_SUS (0x1 << 18)
#define HSREWA_INT1_EVNT_ERR_DEV_K (0x1 << 17)
#define HSREWA_INT1_EVNT_DISCON (0x1 << 16)
#define HSREWA_INT1_EVNT_BYPASS_DIS (0x1 << 2)
#define HSREWA_INT1_EVNT_RET_DIS (0x1 << 1)
#define HSREWA_INT1_EVNT_RET_EN (0x1 << 0)
#define EXYNOS_USBCON_HSREWA_INT1_EVNT_MSK (0x11C)
#define HSREWA_INT1_EVNT_MSK_ERR_SUS_MASK (0x1 << 18)
#define HSREWA_INT1_EVNT_MSK_ERR_DEV_K_MASK (0x1 << 17)
#define HSREWA_INT1_EVNT_MSK_DISCON_MASK (0x1 << 16)
#define HSREWA_INT1_EVNT_MSK_BYPASS_DIS_MASK (0x1 << 2)
#define HSREWA_INT1_EVNT_MSK_RET_DIS_MASK (0x1 << 1)
#define HSREWA_INT1_EVNT_MSK_RET_EN_MASK (0x1 << 0)
#endif