linux/drivers/gpu/drm/i915/display/vlv_dpio_phy_regs.h

/* SPDX-License-Identifier: MIT */
/*
 * Copyright © 2023 Intel Corporation
 */

#ifndef __VLV_DPIO_PHY_REGS_H__
#define __VLV_DPIO_PHY_REGS_H__

#include "intel_display_reg_defs.h"

#define _VLV_CMN(dw)
#define _CHV_CMN(cl, dw)
#define _VLV_PLL(ch, dw)
#define _CHV_PLL(ch, dw)
#define _VLV_REF(dw)
#define _VLV_PCS(ch, spline, dw)
#define _VLV_PCS_GRP(ch, dw)
#define _VLV_PCS_BCAST(dw)
#define _VLV_TX(ch, lane, dw)
#define _VLV_TX_GRP(ch, dw)
#define _VLV_TX_BCAST(dw)

/*
 * Per pipe/PLL DPIO regs
 */
#define VLV_PLL_DW3(ch)
#define DPIO_S1_DIV_MASK
#define DPIO_S1_DIV(s1)
#define DPIO_S1_DIV_DAC
#define DPIO_S1_DIV_HDMIDP
#define DPIO_S1_DIV_LVDS1
#define DPIO_S1_DIV_LVDS2
#define DPIO_K_DIV_MASK
#define DPIO_K_DIV(k)
#define DPIO_P1_DIV_MASK
#define DPIO_P1_DIV(p1)
#define DPIO_P2_DIV_MASK
#define DPIO_P2_DIV(p2)
#define DPIO_N_DIV_MASK
#define DPIO_N_DIV(n)
#define DPIO_ENABLE_CALIBRATION
#define DPIO_M1_DIV_MASK
#define DPIO_M1_DIV(m1)
#define DPIO_M2_DIV_MASK
#define DPIO_M2_DIV(m2)

#define VLV_PLL_DW5(ch)
#define DPIO_REFSEL_OVERRIDE
#define DPIO_PLL_MODESEL_MASK
#define DPIO_BIAS_CURRENT_CTL_MASK
#define DPIO_PLL_REFCLK_SEL_MASK
#define DPIO_DRIVER_CTL_MASK
#define DPIO_CLK_BIAS_CTL_MASK

#define VLV_PLL_DW7(ch)

#define VLV_PLL_DW16(ch)

#define VLV_PLL_DW17(ch)

#define VLV_PLL_DW18(ch)

#define VLV_PLL_DW19(ch)

#define VLV_REF_DW11

#define VLV_CMN_DW0

/*
 * Per DDI channel DPIO regs
 */
#define VLV_PCS_DW0_GRP(ch)
#define VLV_PCS01_DW0(ch)
#define VLV_PCS23_DW0(ch)
#define DPIO_PCS_TX_LANE2_RESET
#define DPIO_PCS_TX_LANE1_RESET
#define DPIO_LEFT_TXFIFO_RST_MASTER2
#define DPIO_RIGHT_TXFIFO_RST_MASTER2

#define VLV_PCS_DW1_GRP(ch)
#define VLV_PCS01_DW1(ch)
#define VLV_PCS23_DW1(ch)
#define CHV_PCS_REQ_SOFTRESET_EN
#define DPIO_PCS_CLK_CRI_RXEB_EIOS_EN
#define DPIO_PCS_CLK_CRI_RXDIGFILTSG_EN
#define DPIO_PCS_CLK_DATAWIDTH_MASK
#define DPIO_PCS_CLK_DATAWIDTH_8_10
#define DPIO_PCS_CLK_DATAWIDTH_16_20
#define DPIO_PCS_CLK_DATAWIDTH_32_40
#define DPIO_PCS_CLK_SOFT_RESET

#define VLV_PCS_DW8_GRP(ch)
#define VLV_PCS01_DW8(ch)
#define VLV_PCS23_DW8(ch)
#define DPIO_PCS_USEDCLKCHANNEL
#define DPIO_PCS_USEDCLKCHANNEL_OVRRIDE

#define VLV_PCS_DW9_GRP(ch)
#define VLV_PCS01_DW9(ch)
#define VLV_PCS23_DW9(ch)
#define DPIO_PCS_TX2MARGIN_MASK
#define DPIO_PCS_TX2MARGIN_000
#define DPIO_PCS_TX2MARGIN_101
#define DPIO_PCS_TX1MARGIN_MASK
#define DPIO_PCS_TX1MARGIN_000
#define DPIO_PCS_TX1MARGIN_101

#define VLV_PCS_DW10_GRP(ch)
#define VLV_PCS01_DW10(ch)
#define VLV_PCS23_DW10(ch)
#define DPIO_PCS_SWING_CALC_TX1_TX3
#define DPIO_PCS_SWING_CALC_TX0_TX2
#define DPIO_PCS_TX2DEEMP_MASK
#define DPIO_PCS_TX2DEEMP_9P5
#define DPIO_PCS_TX2DEEMP_6P0
#define DPIO_PCS_TX1DEEMP_MASK
#define DPIO_PCS_TX1DEEMP_9P5
#define DPIO_PCS_TX1DEEMP_6P0

#define VLV_PCS_DW11_GRP(ch)
#define VLV_PCS01_DW11(ch)
#define VLV_PCS23_DW11(ch)
#define DPIO_TX2_STAGGER_MASK_MASK
#define DPIO_TX2_STAGGER_MASK(x)
#define DPIO_LANEDESKEW_STRAP_OVRD
#define DPIO_LEFT_TXFIFO_RST_MASTER
#define DPIO_RIGHT_TXFIFO_RST_MASTER

#define VLV_PCS_DW12_GRP(ch)
#define VLV_PCS01_DW12(ch)
#define VLV_PCS23_DW12(ch)
#define DPIO_TX2_STAGGER_MULT_MASK
#define DPIO_TX2_STAGGER_MULT(x)
#define DPIO_TX1_STAGGER_MULT_MASK
#define DPIO_TX1_STAGGER_MULT(x)
#define DPIO_TX1_STAGGER_MASK_MASK
#define DPIO_TX1_STAGGER_MASK(x)
#define DPIO_LANESTAGGER_STRAP_OVRD
#define DPIO_LANESTAGGER_STRAP_MASK
#define DPIO_LANESTAGGER_STRAP(x)

#define VLV_PCS_DW14_GRP(ch)
#define VLV_PCS01_DW14(ch)
#define VLV_PCS23_DW14(ch)

#define VLV_PCS_DW17_BCAST
#define VLV_PCS_DW17_GRP(ch)
#define VLV_PCS01_DW17(ch)
#define VLV_PCS23_DW17(ch)

#define VLV_PCS_DW23_GRP(ch)
#define VLV_PCS01_DW23(ch)
#define VLV_PCS23_DW23(ch)

#define VLV_TX_DW2_GRP(ch)
#define VLV_TX_DW2(ch, lane)
#define DPIO_SWING_MARGIN000_MASK
#define DPIO_SWING_MARGIN000(x)
#define DPIO_UNIQ_TRANS_SCALE_MASK
#define DPIO_UNIQ_TRANS_SCALE(x)

#define VLV_TX_DW3_GRP(ch)
#define VLV_TX_DW3(ch, lane)
/* The following bit for CHV phy */
#define DPIO_TX_UNIQ_TRANS_SCALE_EN
#define DPIO_SWING_MARGIN101_MASK
#define DPIO_SWING_MARGIN101(x)

#define VLV_TX_DW4_GRP(ch)
#define VLV_TX_DW4(ch, lane)
#define DPIO_SWING_DEEMPH9P5_MASK
#define DPIO_SWING_DEEMPH9P5(x)
#define DPIO_SWING_DEEMPH6P0_MASK
#define DPIO_SWING_DEEMPH6P0_SHIFT

#define VLV_TX_DW5_GRP(ch)
#define VLV_TX_DW5(ch, lane)
#define DPIO_TX_OCALINIT_EN

#define VLV_TX_DW11_GRP(ch)
#define VLV_TX_DW11(ch, lane)

#define VLV_TX_DW14_GRP(ch)
#define VLV_TX_DW14(ch, lane)

/* CHV dpPhy registers */
#define CHV_PLL_DW0(ch)
#define DPIO_CHV_M2_DIV_MASK
#define DPIO_CHV_M2_DIV(m2)

#define CHV_PLL_DW1(ch)
#define DPIO_CHV_N_DIV_MASK
#define DPIO_CHV_N_DIV(n)
#define DPIO_CHV_M1_DIV_MASK
#define DPIO_CHV_M1_DIV(m1)
#define DPIO_CHV_M1_DIV_BY_2

#define CHV_PLL_DW2(ch)
#define DPIO_CHV_M2_FRAC_DIV_MASK
#define DPIO_CHV_M2_FRAC_DIV(m2_frac)

#define CHV_PLL_DW3(ch)
#define DPIO_CHV_FRAC_DIV_EN
#define DPIO_CHV_SECOND_MOD
#define DPIO_CHV_FEEDFWD_GAIN_MASK
#define DPIO_CHV_FEEDFWD_GAIN(x)

#define CHV_PLL_DW6(ch)
#define DPIO_CHV_GAIN_CTRL_MASK
#define DPIO_CHV_GAIN_CTRL(x)
#define DPIO_CHV_INT_COEFF_MASK
#define DPIO_CHV_INT_COEFF(x)
#define DPIO_CHV_PROP_COEFF_MASK
#define DPIO_CHV_PROP_COEFF(x)

#define CHV_PLL_DW8(ch)
#define DPIO_CHV_TDC_TARGET_CNT_MASK
#define DPIO_CHV_TDC_TARGET_CNT(x)

#define CHV_PLL_DW9(ch)
#define DPIO_CHV_INT_LOCK_THRESHOLD_MASK
#define DPIO_CHV_INT_LOCK_THRESHOLD(x)
#define DPIO_CHV_INT_LOCK_THRESHOLD_SEL_COARSE

#define CHV_CMN_DW0_CH0
#define DPIO_ALLDL_POWERDOWN_CH0
#define DPIO_ANYDL_POWERDOWN_CH0
#define DPIO_ALLDL_POWERDOWN
#define DPIO_ANYDL_POWERDOWN

#define CHV_CMN_DW5_CH0
#define CHV_BUFRIGHTENA1_MASK
#define CHV_BUFRIGHTENA1_DISABLE
#define CHV_BUFRIGHTENA1_NORMAL
#define CHV_BUFRIGHTENA1_FORCE
#define CHV_BUFLEFTENA1_MASK
#define CHV_BUFLEFTENA1_DISABLE
#define CHV_BUFLEFTENA1_NORMAL
#define CHV_BUFLEFTENA1_FORCE

#define CHV_CMN_DW13_CH0
#define CHV_CMN_DW0_CH1
#define DPIO_CHV_S1_DIV_MASK
#define DPIO_CHV_S1_DIV(s1)
#define DPIO_CHV_P1_DIV_MASK
#define DPIO_CHV_P1_DIV(p1)
#define DPIO_CHV_P2_DIV_MASK
#define DPIO_CHV_P2_DIV(p2)
#define DPIO_CHV_K_DIV_MASK
#define DPIO_CHV_K_DIV(k)
#define DPIO_PLL_FREQLOCK
#define DPIO_PLL_LOCK
#define CHV_CMN_DW13(ch)

#define CHV_CMN_DW14_CH0
#define CHV_CMN_DW1_CH1
#define DPIO_AFC_RECAL
#define DPIO_DCLKP_EN
#define CHV_BUFLEFTENA2_MASK
#define CHV_BUFLEFTENA2_DISABLE
#define CHV_BUFLEFTENA2_NORMAL
#define CHV_BUFLEFTENA2_FORCE
#define CHV_BUFRIGHTENA2_MASK
#define CHV_BUFRIGHTENA2_DISABLE
#define CHV_BUFRIGHTENA2_NORMAL
#define CHV_BUFRIGHTENA2_FORCE
#define CHV_CMN_DW14(ch)

#define CHV_CMN_DW19_CH0
#define CHV_CMN_DW6_CH1
#define DPIO_ALLDL_POWERDOWN_CH1
#define DPIO_ANYDL_POWERDOWN_CH1
#define DPIO_DYNPWRDOWNEN_CH1
#define CHV_CMN_USEDCLKCHANNEL
#define CHV_CMN_DW19(ch)

#define CHV_CMN_DW28
#define DPIO_CL1POWERDOWNEN
#define DPIO_DYNPWRDOWNEN_CH0
#define DPIO_SUS_CLK_CONFIG_MASK
#define DPIO_SUS_CLK_CONFIG_ON
#define DPIO_SUS_CLK_CONFIG_CLKREQ
#define DPIO_SUS_CLK_CONFIG_GATE
#define DPIO_SUS_CLK_CONFIG_GATE_CLKREQ

#define CHV_CMN_DW30
#define DPIO_CL2_LDOFUSE_PWRENB
#define DPIO_LRC_BYPASS

#define CHV_TX_DW0(ch, lane)
#define CHV_TX_DW1(ch, lane)
#define CHV_TX_DW2(ch, lane)
#define CHV_TX_DW3(ch, lane)
#define CHV_TX_DW4(ch, lane)
#define CHV_TX_DW5(ch, lane)
#define CHV_TX_DW6(ch, lane)
#define CHV_TX_DW7(ch, lane)
#define CHV_TX_DW8(ch, lane)
#define CHV_TX_DW9(ch, lane)
#define CHV_TX_DW10(ch, lane)

#define CHV_TX_DW11(ch, lane)
#define DPIO_FRC_LATENCY_MASK
#define DPIO_FRC_LATENCY(x)

#define CHV_TX_DW14(ch, lane)
#define DPIO_UPAR

#endif /* __VLV_DPIO_PHY_REGS_H__ */