#ifndef __RCAR_MIPI_DSI_REGS_H__
#define __RCAR_MIPI_DSI_REGS_H__
#define LINKSR 0x010
#define LINKSR_LPBUSY BIT_U32(1)
#define LINKSR_HSBUSY BIT_U32(0)
#define TXSETR 0x100
#define TXSETR_LANECNT_MASK GENMASK_U32(1, 0)
#define TXCMSETR 0x110
#define TXCMSETR_SPDTYP BIT_U32(8)
#define TXCMSETR_LPPDACC BIT_U32(0)
#define TXCMCR 0x120
#define TXCMCR_BTATYP BIT_U32(2)
#define TXCMCR_BTAREQ BIT_U32(1)
#define TXCMCR_TXREQ BIT_U32(0)
#define TXCMSR 0x130
#define TXCMSR_CLSNERR BIT_U32(18)
#define TXCMSR_AXIERR BIT_U32(16)
#define TXCMSR_TXREQEND BIT_U32(0)
#define TXCMSCR 0x134
#define TXCMSCR_CLSNERR BIT_U32(18)
#define TXCMSCR_AXIERR BIT_U32(16)
#define TXCMSCR_TXREQEND BIT_U32(0)
#define TXCMIER 0x138
#define TXCMIER_CLSNERR BIT_U32(18)
#define TXCMIER_AXIERR BIT_U32(16)
#define TXCMIER_TXREQEND BIT_U32(0)
#define TXCMADDRSET0R 0x140
#define TXCMPHDR 0x150
#define TXCMPHDR_FMT BIT_U32(24)
#define TXCMPHDR_VC_MASK GENMASK_U32(23, 22)
#define TXCMPHDR_VC(n) FIELD_PREP(TXCMPHDR_VC_MASK, (n))
#define TXCMPHDR_DT_MASK GENMASK_U32(21, 16)
#define TXCMPHDR_DT(n) FIELD_PREP(TXCMPHDR_DT_MASK, (n))
#define TXCMPHDR_DATA1_MASK GENMASK_U32(15, 8)
#define TXCMPHDR_DATA1(n) FIELD_PREP(TXCMPHDR_DATA1_MASK, (n))
#define TXCMPHDR_DATA0_MASK GENMASK_U32(7, 0)
#define TXCMPHDR_DATA0(n) FIELD_PREP(TXCMPHDR_DATA0_MASK, (n))
#define TXCMPPD0R 0x160
#define TXCMPPD1R 0x164
#define TXCMPPD2R 0x168
#define TXCMPPD3R 0x16c
#define RXSETR 0x200
#define RXSETR_CRCEN_MASK GENMASK_U32(27, 24)
#define RXSETR_ECCEN_MASK GENMASK_U32(19, 16)
#define RXPSETR 0x210
#define RXPSETR_LPPDACC BIT_U32(0)
#define RXPSR 0x220
#define RXPSR_ECCERR1B BIT_U32(28)
#define RXPSR_UEXTRGERR BIT_U32(25)
#define RXPSR_RESPTOERR BIT_U32(24)
#define RXPSR_OVRERR BIT_U32(23)
#define RXPSR_AXIERR BIT_U32(22)
#define RXPSR_CRCERR BIT_U32(21)
#define RXPSR_WCERR BIT_U32(20)
#define RXPSR_UEXDTERR BIT_U32(19)
#define RXPSR_UEXPKTERR BIT_U32(18)
#define RXPSR_ECCERR BIT_U32(17)
#define RXPSR_MLFERR BIT_U32(16)
#define RXPSR_RCVACK BIT_U32(14)
#define RXPSR_RCVEOT BIT_U32(10)
#define RXPSR_RCVAKE BIT_U32(9)
#define RXPSR_RCVRESP BIT_U32(8)
#define RXPSR_BTAREQEND BIT_U32(0)
#define RXPSCR 0x224
#define RXPSCR_ECCERR1B BIT_U32(28)
#define RXPSCR_UEXTRGERR BIT_U32(25)
#define RXPSCR_RESPTOERR BIT_U32(24)
#define RXPSCR_OVRERR BIT_U32(23)
#define RXPSCR_AXIERR BIT_U32(22)
#define RXPSCR_CRCERR BIT_U32(21)
#define RXPSCR_WCERR BIT_U32(20)
#define RXPSCR_UEXDTERR BIT_U32(19)
#define RXPSCR_UEXPKTERR BIT_U32(18)
#define RXPSCR_ECCERR BIT_U32(17)
#define RXPSCR_MLFERR BIT_U32(16)
#define RXPSCR_RCVACK BIT_U32(14)
#define RXPSCR_RCVEOT BIT_U32(10)
#define RXPSCR_RCVAKE BIT_U32(9)
#define RXPSCR_RCVRESP BIT_U32(8)
#define RXPSCR_BTAREQEND BIT_U32(0)
#define RXPIER 0x228
#define RXPIER_ECCERR1B BIT_U32(28)
#define RXPIER_UEXTRGERR BIT_U32(25)
#define RXPIER_RESPTOERR BIT_U32(24)
#define RXPIER_OVRERR BIT_U32(23)
#define RXPIER_AXIERR BIT_U32(22)
#define RXPIER_CRCERR BIT_U32(21)
#define RXPIER_WCERR BIT_U32(20)
#define RXPIER_UEXDTERR BIT_U32(19)
#define RXPIER_UEXPKTERR BIT_U32(18)
#define RXPIER_ECCERR BIT_U32(17)
#define RXPIER_MLFERR BIT_U32(16)
#define RXPIER_RCVACK BIT_U32(14)
#define RXPIER_RCVEOT BIT_U32(10)
#define RXPIER_RCVAKE BIT_U32(9)
#define RXPIER_RCVRESP BIT_U32(8)
#define RXPIER_BTAREQEND BIT_U32(0)
#define RXPADDRSET0R 0x230
#define RXPSIZESETR 0x238
#define RXPSIZESETR_SIZE_MASK GENMASK_U32(6, 3)
#define RXPHDR 0x240
#define RXPHDR_FMT BIT_U32(24)
#define RXPHDR_VC_MASK GENMASK_U32(23, 22)
#define RXPHDR_DT_MASK GENMASK_U32(21, 16)
#define RXPHDR_DATA1_MASK GENMASK_U32(15, 8)
#define RXPHDR_DATA0_MASK GENMASK_U32(7, 0)
#define RXPPD0R 0x250
#define RXPPD1R 0x254
#define RXPPD2R 0x258
#define RXPPD3R 0x25c
#define AKEPR 0x300
#define AKEPR_VC_MASK GENMASK_U32(23, 22)
#define AKEPR_DT_MASK GENMASK_U32(21, 16)
#define AKEPR_ERRRPT_MASK GENMASK_U32(15, 0)
#define RXRESPTOSETR 0x400
#define TACR 0x500
#define TASR 0x510
#define TASCR 0x514
#define TAIER 0x518
#define TOSR 0x610
#define TOSR_TATO BIT_U32(2)
#define TOSR_LRXHTO BIT_U32(1)
#define TOSR_HRXTO BIT_U32(0)
#define TOSCR 0x614
#define TOSCR_TATO BIT_U32(2)
#define TOSCR_LRXHTO BIT_U32(1)
#define TOSCR_HRXTO BIT_U32(0)
#define TXVMSETR 0x180
#define TXVMSETR_SYNSEQ_EVENTS BIT_U32(16)
#define TXVMSETR_VSTPM BIT_U32(15)
#define TXVMSETR_PIXWDTH_MASK GENMASK_U32(10, 8)
#define TXVMSETR_PIXWDTH BIT_U32(8)
#define TXVMSETR_VSEN BIT_U32(4)
#define TXVMSETR_HFPBPEN BIT_U32(2)
#define TXVMSETR_HBPBPEN BIT_U32(1)
#define TXVMSETR_HSABPEN BIT_U32(0)
#define TXVMCR 0x190
#define TXVMCR_VFCLR BIT_U32(12)
#define TXVMCR_EN_VIDEO BIT_U32(0)
#define TXVMSR 0x1a0
#define TXVMSR_STR BIT_U32(16)
#define TXVMSR_VFRDY BIT_U32(12)
#define TXVMSR_ACT BIT_U32(8)
#define TXVMSR_RDY BIT_U32(0)
#define TXVMSCR 0x1a4
#define TXVMSCR_STR BIT_U32(16)
#define TXVMPSPHSETR 0x1c0
#define TXVMPSPHSETR_DT_MASK (0x3f << 16)
#define TXVMPSPHSETR_DT_RGB16 FIELD_PREP(TXVMPSPHSETR_DT_MASK, 0x0e)
#define TXVMPSPHSETR_DT_RGB18 FIELD_PREP(TXVMPSPHSETR_DT_MASK, 0x1e)
#define TXVMPSPHSETR_DT_RGB18_LS FIELD_PREP(TXVMPSPHSETR_DT_MASK, 0x2e)
#define TXVMPSPHSETR_DT_RGB24 FIELD_PREP(TXVMPSPHSETR_DT_MASK, 0x3e)
#define TXVMPSPHSETR_DT_YCBCR16 FIELD_PREP(TXVMPSPHSETR_DT_MASK, 0x2c)
#define TXVMVPRMSET0R 0x1d0
#define TXVMVPRMSET0R_HSPOL_LOW BIT_U32(17)
#define TXVMVPRMSET0R_VSPOL_LOW BIT_U32(16)
#define TXVMVPRMSET0R_CSPC_YCbCr BIT_U32(4)
#define TXVMVPRMSET0R_BPP_MASK GENMASK_U32(2, 0)
#define TXVMVPRMSET0R_BPP_16 FIELD_PREP(TXVMVPRMSET0R_BPP_MASK, 0)
#define TXVMVPRMSET0R_BPP_18 FIELD_PREP(TXVMVPRMSET0R_BPP_MASK, 1)
#define TXVMVPRMSET0R_BPP_24 FIELD_PREP(TXVMVPRMSET0R_BPP_MASK, 2)
#define TXVMVPRMSET1R 0x1d4
#define TXVMVPRMSET1R_VACTIVE_MASK GENMASK_U32(30, 16)
#define TXVMVPRMSET1R_VACTIVE(n) FIELD_PREP(TXVMVPRMSET1R_VACTIVE_MASK, (n))
#define TXVMVPRMSET1R_VSA_MASK GENMASK_U32(11, 0)
#define TXVMVPRMSET1R_VSA(n) FIELD_PREP(TXVMVPRMSET1R_VSA_MASK, (n))
#define TXVMVPRMSET2R 0x1d8
#define TXVMVPRMSET2R_VFP_MASK GENMASK_U32(28, 16)
#define TXVMVPRMSET2R_VFP(n) FIELD_PREP(TXVMVPRMSET2R_VFP_MASK, (n))
#define TXVMVPRMSET2R_VBP_MASK GENMASK_U32(12, 0)
#define TXVMVPRMSET2R_VBP(n) FIELD_PREP(TXVMVPRMSET2R_VBP_MASK, (n))
#define TXVMVPRMSET3R 0x1dc
#define TXVMVPRMSET3R_HACTIVE_MASK GENMASK_U32(30, 16)
#define TXVMVPRMSET3R_HACTIVE(n) FIELD_PREP(TXVMVPRMSET3R_HACTIVE_MASK, (n))
#define TXVMVPRMSET3R_HSA_MASK GENMASK_U32(11, 0)
#define TXVMVPRMSET3R_HSA(n) FIELD_PREP(TXVMVPRMSET3R_HSA_MASK, (n))
#define TXVMVPRMSET4R 0x1e0
#define TXVMVPRMSET4R_HFP_MASK GENMASK_U32(28, 16)
#define TXVMVPRMSET4R_HFP(n) FIELD_PREP(TXVMVPRMSET4R_HFP_MASK, (n))
#define TXVMVPRMSET4R_HBP_MASK GENMASK_U32(12, 0)
#define TXVMVPRMSET4R_HBP(n) FIELD_PREP(TXVMVPRMSET4R_HBP_MASK, (n))
#define PPISETR 0x700
#define PPISETR_DLEN_MASK GENMASK_U32(3, 0)
#define PPISETR_CLEN BIT_U32(8)
#define PPICLCR 0x710
#define PPICLCR_TXREQHS BIT_U32(8)
#define PPICLCR_TXULPSEXT BIT_U32(1)
#define PPICLCR_TXULPSCLK BIT_U32(0)
#define PPICLSR 0x720
#define PPICLSR_HSTOLP BIT_U32(27)
#define PPICLSR_TOHS BIT_U32(26)
#define PPICLSR_STPST BIT_U32(0)
#define PPICLSCR 0x724
#define PPICLSCR_HSTOLP BIT_U32(27)
#define PPICLSCR_TOHS BIT_U32(26)
#define PPIDL0SR 0x740
#define PPIDL0SR_DIR BIT_U32(10)
#define PPIDL0SR_STPST BIT_U32(6)
#define PPIDLSR 0x760
#define PPIDLSR_STPST GENMASK_U32(3, 0)
#define LPCLKSET 0x1000
#define LPCLKSET_CKEN BIT_U32(8)
#define LPCLKSET_LPCLKDIV_MASK GENMASK_U32(5, 0)
#define CFGCLKSET 0x1004
#define CFGCLKSET_CKEN BIT_U32(8)
#define CFGCLKSET_CFGCLKDIV_MASK GENMASK_U32(5, 0)
#define DOTCLKDIV 0x1008
#define DOTCLKDIV_CKEN BIT_U32(8)
#define DOTCLKDIV_DOTCLKDIV_MASK GENMASK_U32(5, 0)
#define VCLKSET 0x100c
#define VCLKSET_CKEN BIT_U32(16)
#define VCLKSET_COLOR_YCC BIT_U32(8)
#define VCLKSET_DIV_V3U_MASK GENMASK_U32(5, 4)
#define VCLKSET_DIV_V3U(n) FIELD_PREP(VCLKSET_DIV_V3U_MASK, (n))
#define VCLKSET_DIV_V4H_MASK GENMASK_U32(6, 4)
#define VCLKSET_DIV_V4H(n) FIELD_PREP(VCLKSET_DIV_V4H_MASK, (n))
#define VCLKSET_BPP_MASK GENMASK_U32(3, 2)
#define VCLKSET_BPP_16 FIELD_PREP(VCLKSET_BPP_MASK, 0)
#define VCLKSET_BPP_18 FIELD_PREP(VCLKSET_BPP_MASK, 1)
#define VCLKSET_BPP_18L FIELD_PREP(VCLKSET_BPP_MASK, 2)
#define VCLKSET_BPP_24 FIELD_PREP(VCLKSET_BPP_MASK, 3)
#define VCLKSET_LANE_MASK GENMASK_U32(1, 0)
#define VCLKSET_LANE(n) FIELD_PREP(VCLKSET_LANE_MASK, (n))
#define VCLKEN 0x1010
#define VCLKEN_CKEN BIT_U32(0)
#define PHYSETUP 0x1014
#define PHYSETUP_HSFREQRANGE_MASK GENMASK_U32(22, 16)
#define PHYSETUP_HSFREQRANGE(n) FIELD_PREP(PHYSETUP_HSFREQRANGE_MASK, (n))
#define PHYSETUP_CFGCLKFREQRANGE_MASK GENMASK_U32(13, 8)
#define PHYSETUP_SHUTDOWNZ BIT_U32(1)
#define PHYSETUP_RSTZ BIT_U32(0)
#define CLOCKSET1 0x101c
#define CLOCKSET1_LOCK_PHY BIT_U32(17)
#define CLOCKSET1_CLKSEL BIT_U32(8)
#define CLOCKSET1_CLKINSEL_MASK GENMASK_U32(3, 2)
#define CLOCKSET1_CLKINSEL_EXTAL FIELD_PREP(CLOCKSET1_CLKINSEL_MASK, 0)
#define CLOCKSET1_CLKINSEL_DIG FIELD_PREP(CLOCKSET1_CLKINSEL_MASK, 1)
#define CLOCKSET1_CLKINSEL_DU FIELD_PREP(CLOCKSET1_CLKINSEL_MASK, 2)
#define CLOCKSET1_SHADOW_CLEAR BIT_U32(1)
#define CLOCKSET1_UPDATEPLL BIT_U32(0)
#define CLOCKSET2 0x1020
#define CLOCKSET2_M_MASK GENMASK_U32(27, 16)
#define CLOCKSET2_M(n) FIELD_PREP(CLOCKSET2_M_MASK, (n))
#define CLOCKSET2_VCO_CNTRL_MASK GENMASK_U32(13, 8)
#define CLOCKSET2_VCO_CNTRL(n) FIELD_PREP(CLOCKSET2_VCO_CNTRL_MASK, (n))
#define CLOCKSET2_N_MASK GENMASK_U32(3, 0)
#define CLOCKSET2_N(n) FIELD_PREP(CLOCKSET2_N_MASK, (n))
#define CLOCKSET3 0x1024
#define CLOCKSET3_PROP_CNTRL_MASK GENMASK_U32(29, 24)
#define CLOCKSET3_PROP_CNTRL(n) FIELD_PREP(CLOCKSET3_PROP_CNTRL_MASK, (n))
#define CLOCKSET3_INT_CNTRL_MASK GENMASK_U32(21, 16)
#define CLOCKSET3_INT_CNTRL(n) FIELD_PREP(CLOCKSET3_INT_CNTRL_MASK, (n))
#define CLOCKSET3_CPBIAS_CNTRL_MASK GENMASK_U32(14, 8)
#define CLOCKSET3_CPBIAS_CNTRL(n) FIELD_PREP(CLOCKSET3_CPBIAS_CNTRL_MASK, (n))
#define CLOCKSET3_GMP_CNTRL_MASK GENMASK_U32(1, 0)
#define CLOCKSET3_GMP_CNTRL(n) FIELD_PREP(CLOCKSET3_GMP_CNTRL_MASK, (n))
#define PHTW 0x1034
#define PHTW_DWEN BIT_U32(24)
#define PHTW_TESTDIN_DATA_MASK GENMASK_U32(23, 16)
#define PHTW_CWEN BIT_U32(8)
#define PHTW_TESTDIN_CODE_MASK GENMASK_U32(7, 0)
#define PHTR 0x1038
#define PHTR_TESTDOUT GENMASK_U32(23, 16)
#define PHTR_TESTDOUT_TEST BIT_U32(16)
#define PHTC 0x103c
#define PHTC_TESTCLR BIT_U32(0)
#endif