#include <drm/drm_managed.h>
#include "dpu_hwio.h"
#include "dpu_hw_catalog.h"
#include "dpu_hw_vbif.h"
#define VBIF_VERSION …
#define VBIF_CLK_FORCE_CTRL0 …
#define VBIF_CLK_FORCE_CTRL1 …
#define VBIF_QOS_REMAP_00 …
#define VBIF_QOS_REMAP_01 …
#define VBIF_QOS_REMAP_10 …
#define VBIF_QOS_REMAP_11 …
#define VBIF_WRITE_GATHER_EN …
#define VBIF_IN_RD_LIM_CONF0 …
#define VBIF_IN_RD_LIM_CONF1 …
#define VBIF_IN_RD_LIM_CONF2 …
#define VBIF_IN_WR_LIM_CONF0 …
#define VBIF_IN_WR_LIM_CONF1 …
#define VBIF_IN_WR_LIM_CONF2 …
#define VBIF_OUT_RD_LIM_CONF0 …
#define VBIF_OUT_WR_LIM_CONF0 …
#define VBIF_OUT_AXI_AMEMTYPE_CONF0 …
#define VBIF_OUT_AXI_AMEMTYPE_CONF1 …
#define VBIF_XIN_PND_ERR …
#define VBIF_XIN_SRC_ERR …
#define VBIF_XIN_CLR_ERR …
#define VBIF_XIN_HALT_CTRL0 …
#define VBIF_XIN_HALT_CTRL1 …
#define VBIF_XINL_QOS_RP_REMAP_000 …
#define VBIF_XINL_QOS_LVL_REMAP_000(vbif) …
static void dpu_hw_clear_errors(struct dpu_hw_vbif *vbif,
u32 *pnd_errors, u32 *src_errors)
{ … }
static void dpu_hw_set_mem_type(struct dpu_hw_vbif *vbif,
u32 xin_id, u32 value)
{ … }
static void dpu_hw_set_limit_conf(struct dpu_hw_vbif *vbif,
u32 xin_id, bool rd, u32 limit)
{ … }
static u32 dpu_hw_get_limit_conf(struct dpu_hw_vbif *vbif,
u32 xin_id, bool rd)
{ … }
static void dpu_hw_set_halt_ctrl(struct dpu_hw_vbif *vbif,
u32 xin_id, bool enable)
{ … }
static bool dpu_hw_get_halt_ctrl(struct dpu_hw_vbif *vbif,
u32 xin_id)
{ … }
static void dpu_hw_set_qos_remap(struct dpu_hw_vbif *vbif,
u32 xin_id, u32 level, u32 remap_level)
{ … }
static void dpu_hw_set_write_gather_en(struct dpu_hw_vbif *vbif, u32 xin_id)
{ … }
static void _setup_vbif_ops(struct dpu_hw_vbif_ops *ops,
unsigned long cap)
{ … }
struct dpu_hw_vbif *dpu_hw_vbif_init(struct drm_device *dev,
const struct dpu_vbif_cfg *cfg,
void __iomem *addr)
{ … }