linux/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

// SPDX-License-Identifier: GPL-2.0-only
/* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
 * Copyright (c) 2022-2023, Qualcomm Innovation Center, Inc. All rights reserved.
 */

#define pr_fmt(fmt)
#include <linux/slab.h>
#include <linux/of_address.h>
#include <linux/platform_device.h>
#include "dpu_hw_mdss.h"
#include "dpu_hw_interrupts.h"
#include "dpu_hw_catalog.h"
#include "dpu_kms.h"

#define VIG_BASE_MASK

#define VIG_MASK

#define VIG_MSM8998_MASK

#define VIG_SDM845_MASK

#define VIG_SDM845_MASK_SDMA

#define VIG_QCM2290_MASK

#define DMA_MSM8998_MASK

#define VIG_SC7280_MASK

#define VIG_SC7280_MASK_SDMA

#define DMA_SDM845_MASK

#define DMA_CURSOR_SDM845_MASK

#define DMA_SDM845_MASK_SDMA

#define DMA_CURSOR_SDM845_MASK_SDMA

#define DMA_CURSOR_MSM8998_MASK

#define MIXER_MSM8998_MASK

#define MIXER_SDM845_MASK

#define MIXER_QCM2290_MASK

#define PINGPONG_SDM845_MASK

#define PINGPONG_SDM845_TE2_MASK

#define PINGPONG_SM8150_MASK

#define CTL_SC7280_MASK

#define CTL_SM8550_MASK

#define DSPP_SC7180_MASK

#define INTF_SC7180_MASK

#define INTF_SC7280_MASK

#define WB_SM8250_MASK

#define DEFAULT_PIXEL_RAM_SIZE
#define DEFAULT_DPU_LINE_WIDTH
#define DEFAULT_DPU_OUTPUT_LINE_WIDTH

#define MAX_HORZ_DECIMATION
#define MAX_VERT_DECIMATION

#define MAX_UPSCALE_RATIO
#define MAX_DOWNSCALE_RATIO
#define SSPP_UNITY_SCALE

#define STRCAT(X, Y)

static const uint32_t plane_formats[] =;

static const uint32_t plane_formats_yuv[] =;

static const u32 rotation_v2_formats[] =;

static const u32 wb2_formats_rgb[] =;

static const u32 wb2_formats_rgb_yuv[] =;

/*************************************************************
 * SSPP sub blocks config
 *************************************************************/

#define SSPP_SCALER_VER(maj, min)

/* SSPP common configuration */
#define _VIG_SBLK(scaler_ver)

#define _VIG_SBLK_ROT(scaler_ver, rot_cfg)

#define _VIG_SBLK_NOSCALE()

#define _DMA_SBLK()

static const struct dpu_rotation_cfg dpu_rot_sc7280_cfg_v2 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_noscale =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_1_2 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_1_3 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_1_4 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_2_4 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_3_0 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_3_0_rot_v2 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_3_1 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_3_2 =;

static const struct dpu_sspp_sub_blks dpu_vig_sblk_qseed3_3_3 =;

static const struct dpu_sspp_sub_blks dpu_dma_sblk =;

/*************************************************************
 * MIXER sub blocks config
 *************************************************************/

/* MSM8998 */

static const struct dpu_lm_sub_blks msm8998_lm_sblk =;

/* SDM845 */

static const struct dpu_lm_sub_blks sdm845_lm_sblk =;

/* SC7180 */

static const struct dpu_lm_sub_blks sc7180_lm_sblk =;

/* QCM2290 */

static const struct dpu_lm_sub_blks qcm2290_lm_sblk =;

/*************************************************************
 * DSPP sub blocks config
 *************************************************************/
static const struct dpu_dspp_sub_blks msm8998_dspp_sblk =;

static const struct dpu_dspp_sub_blks sdm845_dspp_sblk =;

/*************************************************************
 * PINGPONG sub blocks config
 *************************************************************/
static const struct dpu_pingpong_sub_blks sdm845_pp_sblk_te =;

static const struct dpu_pingpong_sub_blks sdm845_pp_sblk =;

static const struct dpu_pingpong_sub_blks sc7280_pp_sblk =;

/*************************************************************
 * DSC sub blocks config
 *************************************************************/
static const struct dpu_dsc_sub_blks dsc_sblk_0 =;

static const struct dpu_dsc_sub_blks dsc_sblk_1 =;

/*************************************************************
 * CDM block config
 *************************************************************/
static const struct dpu_cdm_cfg sc7280_cdm =;

/*************************************************************
 * VBIF sub blocks config
 *************************************************************/
/* VBIF QOS remap */
static const u32 msm8998_rt_pri_lvl[] =;
static const u32 msm8998_nrt_pri_lvl[] =;
static const u32 sdm845_rt_pri_lvl[] =;
static const u32 sdm845_nrt_pri_lvl[] =;
static const u32 sm8650_rt_pri_lvl[] =;

static const struct dpu_vbif_dynamic_ot_cfg msm8998_ot_rdwr_cfg[] =;

static const struct dpu_vbif_cfg msm8998_vbif[] =;

static const struct dpu_vbif_cfg sdm845_vbif[] =;

static const struct dpu_vbif_cfg sm8550_vbif[] =;

static const struct dpu_vbif_cfg sm8650_vbif[] =;

/*************************************************************
 * PERF data config
 *************************************************************/

/* SSPP QOS LUTs */
static const struct dpu_qos_lut_entry msm8998_qos_linear[] =;

static const struct dpu_qos_lut_entry sdm845_qos_linear[] =;

static const struct dpu_qos_lut_entry msm8998_qos_macrotile[] =;

static const struct dpu_qos_lut_entry sc7180_qos_linear[] =;

static const struct dpu_qos_lut_entry sm6350_qos_linear_macrotile[] =;

static const struct dpu_qos_lut_entry sm8150_qos_linear[] =;

static const struct dpu_qos_lut_entry sc8180x_qos_linear[] =;

static const struct dpu_qos_lut_entry qcm2290_qos_linear[] =;

static const struct dpu_qos_lut_entry sdm845_qos_macrotile[] =;

static const struct dpu_qos_lut_entry sc7180_qos_macrotile[] =;

static const struct dpu_qos_lut_entry sc8180x_qos_macrotile[] =;

static const struct dpu_qos_lut_entry msm8998_qos_nrt[] =;

static const struct dpu_qos_lut_entry sdm845_qos_nrt[] =;

static const struct dpu_qos_lut_entry sc7180_qos_nrt[] =;

/*************************************************************
 * Hardware catalog
 *************************************************************/

#include "catalog/dpu_3_0_msm8998.h"
#include "catalog/dpu_3_2_sdm660.h"
#include "catalog/dpu_3_3_sdm630.h"

#include "catalog/dpu_4_0_sdm845.h"
#include "catalog/dpu_4_1_sdm670.h"

#include "catalog/dpu_5_0_sm8150.h"
#include "catalog/dpu_5_1_sc8180x.h"
#include "catalog/dpu_5_2_sm7150.h"
#include "catalog/dpu_5_4_sm6125.h"

#include "catalog/dpu_6_0_sm8250.h"
#include "catalog/dpu_6_2_sc7180.h"
#include "catalog/dpu_6_3_sm6115.h"
#include "catalog/dpu_6_4_sm6350.h"
#include "catalog/dpu_6_5_qcm2290.h"
#include "catalog/dpu_6_9_sm6375.h"

#include "catalog/dpu_7_0_sm8350.h"
#include "catalog/dpu_7_2_sc7280.h"

#include "catalog/dpu_8_0_sc8280xp.h"
#include "catalog/dpu_8_1_sm8450.h"

#include "catalog/dpu_9_0_sm8550.h"

#include "catalog/dpu_9_2_x1e80100.h"

#include "catalog/dpu_10_0_sm8650.h"